Hauptseite
Hauptinformationen
Generierung der Unterschrift
Einzahlungen
Erste Schritte
Depot erstellen
Depot erstellen ohne Weiterleitung (iframe)
Benachrichtigung über Einzahlung (webhook)
Überprüfung des Einzahlungsstatus
Abrufen der Liste der Einlagen
Einzahlungen ohne 8-tägige Wartezeit (Steam Trade Protection)
Einzahlungsgenehmigung mit 8-tägigem Hold
Benachrichtigungen zu fehlgeschlagenen Webhooks erhalten
Einzahlungen ohne SkinsBack UI
Create a deposit without SkinsBack UI (API)
Inventar des Benutzers abrufen
Skin-Abhebung
Preisliste (Skin-Verfügbarkeit)
Skin-Suche
Skin kaufen
Skins in großen Mengen kaufen
Status des Skin-Kaufs
Kaufverlauf für Skins
Sonstiges
Projektsaldo
Auszahlungs- und Einzahlungshistorie
Währungen und Wechselkurse
Serverstatus
Ereignisse in Echtzeit: Websockets
Ereignisse in Echtzeit: Webhook
Generierung der Unterschrift
Die Signatur wird durch Konkatenation aller Parameter im Format "key:value;" gebildet und mit dem Client Secret als SHA1 HMAC signiert. Arrays und Objekte werden übersprungen. Den Client Secret finden Sie in Ihrem Händlerkonto.
Beispiel für die Generierung einer Signatur in PHP:
<?php
function buildSignature($params, $clientSecret)
{
ksort($params);
$paramsString = '';
foreach($params AS $key => $value)
{
if($key == 'sign') continue;
if(is_array($value)) { continue; }
$paramsString .= $key .':'. $value .';';
}
$sign = hash_hmac('sha1', $paramsString, $clientSecret);
return $sign;
}
$clientSecret = '123'; // Client Secret
$params = array(
'method' => 'orderstatus',
'order_id' => 1,
'shopid' => '123' // Client ID
);
$params['sign'] = buildSignature($params, $clientSecret);
Beispiel für die Generierung einer Signatur in JavaScript:
function buildSignature(params, clientSecret)
{
var paramsString = '';
Object.keys(params).sort().forEach(function(key)
{
if (key === 'sign') return;
if(typeof params[key] == 'object') return;
paramsString += '' + key + ':' + params[key] + ';';
});
var crypto = require('crypto');
paramsString = crypto.createHmac('sha1', clientSecret).update(paramsString).digest('hex');
return paramsString;
}
var clientSecret = '123'; // Client Secret
var params = {
method: 'orderstatus',
order_id: 1,
shopid: '123' // Client ID
}
params.sign = buildSignature(params, clientSecret);
Beispielanfrage mit Signatur in PHP:
<?php
$params = array(
'shopid' => '1', // Client ID
'method' => 'create',
'order_id' => 1,
'steam_id' => '76561198827262007',
'trade_token' => 'i1ArBZey',
'currency' => 'usd'
);
$clientSecret = '123123123123213';
// @see https://skinsback.com/de/docs/api/v1/signature/
$params['sign'] = buildSignature($params, $clientSecret);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://skinsback.com/api.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);
curl_close ($ch);
var_dump($server_output);
Webhook: Beispiel zur Überprüfung der Signatur in PHP:
<?php
$clientSecret = '123'; // Client Secret
// @see https://skinsback.com/de/docs/api/v1/signature/
if($_POST['sign'] != buildSignature($_POST, $clientSecret))
{
die('Wrong signature');
}