API Endpoints Overview
All endpoints require the X-API-Key header. The base URL is:
https://api.qbar-scanner.com/api/v1/Endpoints
| Method | Path | Description |
|---|---|---|
POST | /qrcodes | Create a single QR code |
POST | /qrcodes/bulk | Bulk create QR codes (max 50) |
GET | /qrcodes | List your QR codes (paginated) |
GET | /qrcodes/:id | Get a single QR code |
PUT | /qrcodes/:id | Update a QR code |
DELETE | /qrcodes/:id | Delete a QR code |
GET | /qrcodes/:id/image | Get QR code SVG image |
Common Response Fields
Every response includes:
| Field | Type | Description |
|---|---|---|
request_id | string | Unique request ID for debugging |
Common QR Code Object
json
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "url",
"name": "My Website QR",
"content_string": "https://example.com",
"is_dynamic": true,
"status": "active",
"scans": 42,
"short_code": "aB3cD4eF",
"dynamic_url": "https://qbar-scanner.com/r/aB3cD4eF",
"image_url": "https://api.qbar-scanner.com/api/v1/qrcodes/550e.../image",
"created_at": "2025-01-15T10:30:00.000Z",
"updated_at": "2025-01-15T10:30:00.000Z"
}| Field | Type | Description |
|---|---|---|
id | string | UUID of the QR code |
type | string | QR code type (see QR Types) |
name | string | Display name |
content_string | string | Encoded QR content |
is_dynamic | boolean | Whether this is a dynamic (trackable) QR code |
status | string | Always "active" |
scans | number | Total scan count (dynamic QR codes only) |
short_code | string? | Short code for dynamic QR codes |
dynamic_url | string? | Redirect URL for dynamic QR codes |
image_url | string | URL to render this QR code as an image |
created_at | string | ISO 8601 creation timestamp |
updated_at | string | ISO 8601 last update timestamp |