PHP smoke example
Esempio completo in stile smoke-test per gli endpoint QR Codes (inserisci la tua API key nel placeholder).
<?php
declare(strict_types=1);
$baseUrl = 'https://tapy.cc';
$apiKey = 'YOUR_API_KEY'; // replace with your key
function request_json(string $method, string $url, string $apiKey, ?array $payload = null): array
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$headers = [
'Accept: application/json',
'X-API-Key: ' . $apiKey,
];
if ($payload !== null) {
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload, JSON_UNESCAPED_SLASHES));
}
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$raw = curl_exec($ch);
$status = (int) curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);
return [$status, json_decode((string) $raw, true) ?: ['raw' => $raw]];
}
// Step 1 – Create a short link first
[$createStatus, $createBody] = request_json('POST', $baseUrl . '/api/v1/shorten', $apiKey, [
'url' => 'https://example.com',
'title' => 'QR Demo',
]);
echo "POST /api/v1/shorten => HTTP {$createStatus}\n";
print_r($createBody);
$code = (string) $createBody['short_code'];
// Step 2 – Enable QR code for this link
[$qrStatus, $qrBody] = request_json('POST', $baseUrl . '/api/v1/qrcodes', $apiKey, [
'short_code' => $code,
]);
echo "POST /api/v1/qrcodes => HTTP {$qrStatus}\n";
print_r($qrBody);
// Step 3 – List all QR-enabled links
[$listStatus, $listBody] = request_json('GET', $baseUrl . '/api/v1/qrcodes', $apiKey);
echo "GET /api/v1/qrcodes => HTTP {$listStatus}\n";
print_r($listBody);