Hallo zusammen,
ich versuche gerade einen Kontakt über eine API per PHP anzulegen. Aber irgendwie komme ich nicht weiter und kann den Fehler nicht weiter eingrenzen.
Hier mal mein Code:
Wenn ich das so ausführe, bekomme ich den HTTP-Statuscode 200 zurück. Es müsste aber ein 201 zurückkommen, dann wäre der Kontakt angelegt worden. Die API Doku hab ich schon durchgeschaut, aber ich komm leider nicht weiter, da ich keinerlei Fehlermeldung bekomme.
Vielleicht hat einer einen Tipp, wie ich weiter vorgehen kann?
ich versuche gerade einen Kontakt über eine API per PHP anzulegen. Aber irgendwie komme ich nicht weiter und kann den Fehler nicht weiter eingrenzen.
Hier mal mein Code:
PHP Code:
<?php
// Daten
$firstname = 'test';
$lastname = 'test';
// API-Endpunkt und API-Key
$api_url = 'https://xyz.com/api/v1/contact';
$api_key = 'xxx';
// API-Daten vorbereiten
$data = '
{
"firstName" => $firstname,
"lastName" => $lastname
}';
// Header für die Anfrage
$headers = [
'AuthenticationToken: Bearer $api_key',
'Content-Type: application/json',
'Content-Length: ' . strlen($data)
];
// cURL für API-Anfrage
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_ENCODING , 'gzip');
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0');
// Anfrage ausführen und Antwort erhalten
$response = curl_exec($ch);
// Den HTTP-Statuscode abfragen
$http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
// Status
if ($response === false) {
echo "Fehler bei der Anfrage an xyz.com";
} else {
// Ausgabe des HTTP-Statuscodes und der Antwort
echo "HTTP-Statuscode: " . $http_code . "<br>";
//echo "status von Weclapp: " . $response[status];
echo "Antwort von xyz.com: " . $response. "<br>";
}
?>
Wenn ich das so ausführe, bekomme ich den HTTP-Statuscode 200 zurück. Es müsste aber ein 201 zurückkommen, dann wäre der Kontakt angelegt worden. Die API Doku hab ich schon durchgeschaut, aber ich komm leider nicht weiter, da ich keinerlei Fehlermeldung bekomme.
Vielleicht hat einer einen Tipp, wie ich weiter vorgehen kann?