RESTful API for integrating DinoQ into your applications
1. Navigate to Dashboard → API Tokens
2. Click "Generate New Token"
3. Give your token a name
4. Copy the token immediately (it won't be shown again)
Include your API token in the Authorization header:
Authorization: Bearer dq_your_token_herehttps://api.dinoq.in/v1namestringQR code nametypestringREDIRECT, FILE, or VCARDurlstringDestination URL (for REDIRECT)expiresAtstringISO date (optional)maxScansnumberMax scans before expiry (optional)pagenumberPage number (default: 1)limitnumberItems per page (default: 20)typestringFilter by type{
"data": [
{
"id": "clx1234567890",
"shortCode": "abc12345",
"name": "My QR Code",
"type": "REDIRECT",
"status": "ACTIVE",
"scanCount": 42,
"createdAt": "2024-01-01T00:00:00.000Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 50,
"pages": 3
}
}GET /v1/qr/clx1234567890
Response:
{
"id": "clx1234567890",
"shortCode": "abc12345",
"name": "My QR Code",
"type": "REDIRECT",
"status": "ACTIVE",
"config": {
"url": "https://example.com"
},
"scanCount": 42,
"editCount": 2,
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-02T00:00:00.000Z"
}PUT /v1/qr/clx1234567890
Content-Type: application/json
{
"url": "https://newdestination.com"
}
Response:
{
"message": "QR code updated successfully",
"editCount": 3
}DELETE /v1/qr/clx1234567890
Response:
{
"message": "QR code deleted successfully"
}GET /v1/analytics/clx1234567890
Response:
{
"totalScans": 142,
"uniqueVisitors": 98,
"scansByCountry": [
{ "country": "United States", "count": 45 },
{ "country": "United Kingdom", "count": 23 }
],
"scansByDate": [
{ "date": "2024-01-01", "count": 12 },
{ "date": "2024-01-02", "count": 18 }
]
}{
"error": "Error message description",
"code": "ERROR_CODE"
}400Bad RequestInvalid parameters401UnauthorizedInvalid or missing token403ForbiddenPlan limit exceeded404Not FoundResource doesn't exist429Too Many RequestsRate limit exceeded500Server ErrorInternal server error