Endpoint URI: http://api.oldthing.de/soap/soap07.php
WSDL URI: http://api.oldthing.de/soap/soap07.php?WSDL
PHP SOAP client download URI: http://api.oldthing.de/soap/soap07.php?PHPSOAPCLIENT
Soap Service
Result authenticate ( string apiKey )
Ermittelt das Token für eine Session zum Aufruf aller anderen Funktionen. Einen API-Schlüssel erhalten Sie nach Bewerbung bei oldthing. Ohne Authentifizierung (token) können nur die Funktionen "ping()" und "authenticate(apiKey)" aufgerufen werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
var_dump($token);
Result cancelOrder (
string token,
string orderId,
boolean resetArticles
)
Storniert eine Bestellung und versendet die entsprechenden Emails an den Kunden und Verkäufer.
void cancelOrderItem (
string token,
string orderId,
string articleId,
int count,
boolean resetArticle
)
Storniert einen Artikel innerhalb einer Bestellung.
Result deleteItem (
string token,
int id
)
Löscht ein Item (Produkt / Artikel) aus dem Bestand , welches über die interne id identifiziert wird. Diese Id wir z.B. über die Funktionen "getItem" und "getItems" zurückgegeben. Siehe auch "deleteItemBySku".
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
// insert item
$r = $c->deleteItem($token, 123456789);
if ($r->error) {
echo $r->message;
} else {
echo 'Item gelöscht';
}
Result deleteItemBySku (
string token,
string sku
)
Löscht ein Item (Produkt / Artikel) aus dem Bestand , welches über die Artikelnummer (SKU) des Shopbetreibers identifiziert wird. Siehe auch <i>deleteItem</i>.
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
// insert item
$r = $c->deleteItemBySku($token, 'mySku123');
if ($r->error) {
echo $r->message;
} else {
echo 'Item gelöscht';
}
Result getCategories (
string token,
int pid
)
Gibt die oldthing-Kategorien mit Namen und Id entsprechend ihrer Hirarchie zurück.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl'); $r = $c->authenticate('myApiKey'); $token = $r->data; $r = $c->getCategories($token, 0); if ($r->error) { echo $r->message; } else { $rootCats = $r->data; $r2 = $c->getCategories($token, $rootCats[0]->id); var_dump($r2->data); }
Result getItem (
string token,
int id
)
Gibt das Item (Produkt / Artikel) zurück, welches über die interne id identifiziert wird. Beim Einfügen von Items mittels setItem wird die Id des items zurückgegeben.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
// use setItem for inserting an item
// getting item with id 123456789
$r = $c->getItem($token, 123456789);
if (!$r->error) var_dump($r->data);
Result getItemBySku (
string token,
string sku
)
Gleiche Funktion wie "getItem", jedoch wird das Item über die Artikelnummer (SKU) des Shopbetreibers ermittelt.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
// use setItem for inserting an item
$r = $c->getItemBySku($token, 'mySku123');
if (!$r->error) var_dump($r->data);
Result getItemIds (
string token,
int offset,
int limit
)
Gibt alle Items (Produkte / Artikel) als array von Item-Objekten zurück, die lediglich die ID und SKU enthalten. Mit den optionalen Parametern "offset" und "limit" kann die Auswahl definiert werden.
Result getItems (
string token,
int offset,
int limit
)
Gibt alle Items (Produkte / Artikel) als array von Item-Objekten zurück. Mit den optionalen Parametern "offset" und "limit" kann die Auswahl definiert werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl'); $r = $c->authenticate('myApiKey'); $token = $r->data; // use setItem for inserting some items - otherwise the result may be an empty array $offset = 0; $r = $c->getItems($token, $offset, 10); while (!$r->error && (count($r->data) > 0)) { var_dump($r->data); if ($offset > 100) break; $offset += 10; $r = $c->getItems($token, $offset, 10); }
Result getOrder (
string token,
string orderId
)
Gibt die Bestellung mit Artikel ID zurück.
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
$result = $c->getOrder($token, $orderId);
if ($result->error) {
echo $result->message;
} else {
print_r($result);
}
/*
result:
stdClass Object
(
[code] => 0
[error] =>
[message] =>
[data] => Array
(
[id] => 36
[status] => demand_note
[payment] => 31.96
[payment_extra] => 0.00
[shipping] => 0.00
[created_at] => 2016-11-24 17:09:27
[upated_at] => 2016-11-24 17:09:27
[paymentMethod] => Array
(
[label] => Rechnung
[name] => default
)
[items] => Array
(
[0] => Array
(
[id] => 26575726
[sku] => 12345768
[quantity] => 1
)
)
[buyer] => Array
(
[billing] => Array
(
[salutation] => Herr
[lastname] => Mustermann
[firstname] => Dieter
[company] => Firmenname
[company_additional] => Zusatz zum Firmenname z.B. Inhaber
[street] => Teststr 11
[zip] => 10967
[city] => Teststadt
[additional] => Testzusatz
[country] => Deutschland
)
[shipping] => Array
(
[salutation] => Herr
[lastname] => Mustermann
[firstname] => Dieter
[company] => Testfirma
[street] => Teststr 99
[zip] => 10968
[city] => Musterstadt
[additional] => Testzusatz
[country] => Deutschland
)
[email] => max@mustermann.de
)
)
)
*/
Result getOrders (
string token,
string status,
string offset
)
Gibt die Orders des Members zurück
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
$result = $c->getOrders($token, 'new,payed');
if ($result->error) {
echo $result->message;
} else {
print_r($result);
}
/*
result:
object(stdClass)#2 (4) {
["code"]=>
int(0)
["error"]=>
bool(false)
["message"]=>
string(0) ""
["data"]=>
array(56) {
[0]=>
array(3) {
["id"]=>
string(3) "12534556"
["status"]=>
string(3) "new"
["date"]=>
string(19) "2016-12-07 20:21:07"
}
[1]=>
array(3) {
["id"]=>
string(3) "42746488"
["status"]=>
string(3) "new"
["created_at"]=>
string(19) "2017-01-04 12:02:23"
}
.
.
.
.
.
*/
Result ping ( )
Eine Testfunktion der API, so dass die Verbindung sichergestellt werden kann. Diese Funktion wird im laufenden Betrieb nicht benötigt.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->ping();
var_dump($r);
void sendPaymentRequest (
string token,
string orderId,
string notice
)
Schickt eine Zahlungsaufforderung / Zahlungserinnerung an den Käufer.
Result setItem (
string token,
array item
)
Fügt ein neues Item (Produkt / Artikel) ein oder aktualisiert ein bestehendes Item (update). Ein Update erfolgt, wenn eine id gesetzt ist oder ein Item mit gegebener SKU vorhanden ist. Ansonsten wird das Item neu angelegt und erhält eine neue interne id, die zurückgegeben wird.
token kann mit der Funktion authenticate(apiKey) ermittelt werden.$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl'); $r = $c->authenticate('myApiKey'); $token = $r->data; $item = array( 'title' => 'Kettenanhänger aus Pekannuss', 'category_id' => '2584', // oldthing category id - see also getCategories 'price' => '50.00', 'tax' => '19', 'shipping' => '5.00', 'payment_info' => '', 'shipping_info' => '', 'sku' => 'ANR-0004711', 'quantity' => '1', 'description' => 'Tolles Schmuckstück, tolles Schmuckstück, tolles Schmuckstück, tolles Schmuckstück, tolles Schmuckstück', 'condition' => 'Original in guter Qualität erhalten', 'image_urls' => array('http://meine.domain.com/images/item_00001_large.jpg', 'http://meine.domain.com/images/item_00002_large.jpg'), 'location_ref' => array('zip' => '53110', 'country' => 'DE', 'state' => 'NW', 'city' => 'Bonn', 'zip_old' => '5330', 'zip_old_eastwest' => 'W'), 'user_fields' => array('karat' => 42) ); // insert item $r = $c->setItem($token, $item); if ($r->error) { echo $r->message; } else { echo $r->data; // print the new id // update item $item['id'] = $r->data; // not necesary - sku should be fine to identify the item $item['price'] = '51.00'; $r = $c->setItem($token, $item); var_dump($r); }
Result setOrderStatus (
string token,
string orderId,
string status
)
Ändert den Status einer Bestellung und versendet die entsprechenden Emails an den Käufer und Verkäufer. ACHTUNG: Jeder Aufruf dieser Funktion versendet die entsprechenden Status Emails an den Kunden!
Result setSaleNotifierUri (
string token,
string uri
)
Setzt eine HTTP-Adresse, welche beim Kauf eines Produkts (Items) des Shops aufgerufen wird. Die gegebene URL wird nach Bestellungseingang über HTTP mit der POST-Methode aufgerufen (REST-Schnittstelle) wobei Bestelldaten und Details zum Artikel mitgesendet werden. Die URL wird dauerhaft gespeichert, so dass diese Funktion i.d.R. nur einmal aufgerufen werden muss.
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
$c->setSaleNotifierUri($token, 'http://meine.domain.com/api/deleteItem.php');
$r = $c->testSaleNotifierUri($token);
var_dump($r);
/*
Beim Aufruf der angebenen URL wird $_POST folgende Daten enthalten:
array (
'id' => '123456789',
'sku' => 'a1234',
'title' => 'AK Berlin Alexanderplatz',
'price' => 15.00,
'tax' => 0,
'shipping_price' => 0.00,
'order_id' => 106663,
'comment' => 'Dies ist ein Kommentar des Käufers',
'order_date' => '2014-01-15',
'order_time' => '14:06:05',
'email' => 'max@mustermann.de',
'billing' =>
array (
'salutation' => 'Herr',
'lastname' => 'Mustermann',
'firstname' => 'Max',
'company' => 'InterMax',
'street' => 'Hauptstraße',
'zip' => '12345',
'city' => 'Entenhausen',
'additional' => 'Raum 123',
'country' => 'Deutschland',
),
'shipping' =>
array (
'salutation' => 'Herr',
'lastname' => 'Mustermann',
'firstname' => 'Max',
'company' => 'InterMax',
'street' => 'Hauptstraße',
'zip' => '12345',
'city' => 'Entenhausen',
'additional' => 'Raum 123',
'country' => 'Deutschland',
)
);
*/
Result testSaleNotifierUri ( string token )
Testfunktion: Ruft die vorher gesetzte URL (siehe <i>setSaleNotifierUri</i>) einmalig auf, so dass die Verarbeitung eines verkauften Items getestet werden kann. Die URL wird mittels HTTP-POST aufgerufen. Dabei werden Bestelldaten übergeben, die z.B. in einem PHP-Skript über das $_POST array entgegengenommen werden können.
token kann mit der Funktion authenticate(apiKey) ermittelt werden.
$c = new SoapClient('https://api.oldthing.de/soap/soap07.php?wsdl');
$r = $c->authenticate('myApiKey');
$token = $r->data;
$c->setSaleNotifierUri($token, 'http://meine.domain.com/api/deleteItem.php');
$r = $c->testSaleNotifierUri($token);
var_dump($r);
/*
Beim Aufruf der angebenen URL wird $_POST folgende Daten enthalten:
array (
'id' => '123456789',
'sku' => 'a1234',
'title' => 'AK Berlin Alexanderplatz',
'price' => 15.00,
'tax' => 0,
'shipping_price' => 0.00,
'order_id' => 106663,
'comment' => 'Dies ist ein Kommentar des Käufers',
'order_date' => '2014-01-15',
'order_time' => '14:06:05',
'email' => 'max@mustermann.de',
'billing' =>
array (
'salutation' => 'Herr',
'lastname' => 'Mustermann',
'firstname' => 'Max',
'company' => 'InterMax',
'street' => 'Hauptstraße',
'zip' => '12345',
'city' => 'Entenhausen',
'additional' => 'Raum 123',
'country' => 'Deutschland',
),
'shipping' =>
array (
'salutation' => 'Herr',
'lastname' => 'Mustermann',
'firstname' => 'Max',
'company' => 'InterMax',
'street' => 'Hauptstraße',
'zip' => '12345',
'city' => 'Entenhausen',
'additional' => 'Raum 123',
'country' => 'Deutschland',
)
);
*/
Powered by PhpWsdl