Ich habe jetzt alle Beispiele im Forum durchversucht, ein Design per php mit curl hochzuladen und hatte bei jeder Version zahlreiche Probleme.
Gibt es eine funktionierende Version?
Ich habe jetzt alle Beispiele im Forum durchversucht, ein Design per php mit curl hochzuladen und hatte bei jeder Version zahlreiche Probleme.
Gibt es eine funktionierende Version?
Hi Nachbar (Sternschanze Hamburg) ;),
Gehts um den neuen Partnerbereich? Hast du auch die Hinweise zum neuen Partnerbereich und der neuen Api gelesen?
Alter Partnerbereich:
PHP:
Gruß
Thimo
Eigentlich Winterhude Keine Ahnung ob ich den neuen oder alten partnerbereich habe. Mein Account ist schon sehr alt.
Jedenfalls bekomme ich bei der zweiten Anfrage ja die ImageUrl, an die man die Bilddaten senden soll.
Nach dem Upload (Schritt 3) ist darin auch ein Bild zu finden (z. B. https://image.spreadshirtmedia.net/image-server/v1/designs/154222600). Allerdings landet es irgendwo im Nirvana und ist danach nicht mehr zu sehen.
Checke mal bitte, ob alt oder neu:
alt! Und ich brauche mindestens 10 Zeichen, um diesen post abzusenden…
Ok, kannst du einen Pastebin machen? Dann ist es einfacher.
Anlegen solltest du nicht bei
$url = "https://api.spreadshirt.net/api/v1/shops/40000/designs";
sondern eher
$url = "https://api.spreadshirt.net/api/v1/users/DEINE-USER-ID/designs";
Das sollte das Hauptproblem sein.
P.s.:
Falls du möchtest, schreibe mich privat an, habe für den alten Partnerbereich ein recht erfolgreiches, oft genutztes und getestetes Tool zum Upload, Übersetzung, Produkterstellung und Veröffentlichung in PHP
DEINE-USER-ID
ist deine Benutzer-Id - die Nummer
Session anlegen und dann so übergeben
function createSprdAuthHeader($method, $url, $api_key, $api_secret, $session = '')
{
$apiKey = $api_key;
$secret = $api_secret;
$time = time() * 1000;
$data = "$method $url $time";
$sig = sha1("$data $secret");
return "Authorization: SprdAuth apiKey=\"$apiKey\", data=\"$data\", sig=\"$sig\"".(!empty($session) ? ", sessionId=\"$session\"" : '');
}
$session
kommt dann von hier:
# Partial Sourcecode for Login to Spreadshirt API v1
$email = "EMAIL"; # login email address
$password = "PASSWORD"; # login password
// 0. Login to api
$loginURL = "https://api.spreadshirt.net/api/v1/sessions";
$loginXML = "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<login xmlns:xlink='http://www.w3.org/1999/xlink' xmlns='http://api.spreadshirt.net'>
<username>$email</username>
<password>$password</password>
</login>";
$header = array();
$header[] = "Content-Type: application/xml";
echo "Login to $loginURL ".PHP_EOL;//.$result . ''.PHP_EOL;
$ch = curl_init($loginURL);
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $loginXML);
$result = curl_exec($ch);
curl_close($ch);
echo " -> ".parseHttpHeaders($result, "HTTP").PHP_EOL;
$session = substr(parseHttpHeaders($result, "Location"), 44);
siehe auch: https://pastebin.com/zs2Rh9aL
Wie gesagt, hab schon etwas fertiges, was besser strukturiert ist als die Sampels