QRCOD3 Enterprise API

Programmatically generate and manage QRCOD3s at scale

Getting Started

The QRCOD3 Enterprise API allows you to programmatically create and manage QRCOD3s at scale. This API is designed for developers and enterprises who need to integrate QRCOD3 generation into their applications, workflows, or systems.

Base URL

https://qrcod3.com/api/v1

Response Format

All API responses are in JSON format. Successful responses include a success: true field. Error responses include an error field with a description.

Authentication

All Enterprise API endpoints require an API key for authentication. Include your API key in the X-API-Key header with every request.

curl -X GET "https://qrcod3.com/api/v1/qr" \
  -H "X-API-Key: qr_your_api_key_here"
Note: Keep your API key secure and never share it publicly. API keys can be managed through your account settings or via the API Key Management endpoints.

API Key Management

Manage your API keys programmatically. These endpoints require standard user authentication (JWT token).

POST /api/api-keys

Create a new API key

Request Body

Parameter Type Required Description
keyName string Required Descriptive name for the API key

Example Request

{
  "keyName": "Production API Key"
}

Example Response

{
  "success": true,
  "apiKey": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "keyName": "Production API Key",
    "apiKey": "qr_aBcDeFgHiJkLmNoPqRsTuVwXyZ123456",
    "isActive": true,
    "createdAt": "2025-12-21T10:30:00Z",
    "expiresAt": "2026-12-21T10:30:00Z",
    "rateLimitPerMinute": 120,
    "rateLimitPerDay": 50000
  },
  "message": "API key created successfully. Store it securely - it will not be shown again."
}
GET /api/api-keys

List all your API keys (keys are masked for security)

Example Response

{
  "success": true,
  "apiKeys": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "keyName": "Production API Key",
      "maskedKey": "qr_aBcDe...",
      "isActive": true,
      "createdAt": "2025-12-21T10:30:00Z",
      "lastUsedAt": "2025-12-21T15:45:00Z",
      "expiresAt": "2026-12-21T10:30:00Z",
      "rateLimitPerMinute": 120,
      "rateLimitPerDay": 50000
    }
  ]
}
DELETE /api/api-keys/:id

Deactivate an API key

Example Response

{
  "success": true,
  "message": "API key \"Production API Key\" has been deactivated"
}

QRCOD3 Generation

Generate QRCOD3s individually or in bulk with custom styling and metadata.

POST /api/v1/qr/generate

Generate a single QRCOD3

Request Body

Parameter Type Required Description
destinationUrl string Required The URL the QRCOD3 will redirect to
title string Optional Title/name for the QRCOD3
description string Optional Description or notes
customization object Optional Custom styling options (see below)

Customization Object

Parameter Type Description
foregroundColor string Hex color for QRCOD3 (e.g., "#000000")
backgroundColor string Hex color for background (e.g., "#FFFFFF")
logoUrl string URL to logo image for center of QRCOD3
dotStyle string Style of dots: "square" or "rounded"
cornerStyle string Style of corners: "square" or "rounded"

Example Request

curl -X POST "https://qrcod3.com/api/v1/qr/generate" \
  -H "X-API-Key: qr_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "destinationUrl": "https://example.com/product/12345",
    "title": "Product 12345 QRCOD3",
    "description": "QRCOD3 for product landing page",
    "customization": {
      "foregroundColor": "#5468FF",
      "backgroundColor": "#FFFFFF",
      "logoUrl": "https://example.com/logo.png",
      "dotStyle": "rounded",
      "cornerStyle": "rounded"
    }
  }'

Example Response

{
  "success": true,
  "qrCode": {
    "id": "749397f6-39b8-4a18-ab4a-632001fc3aea",
    "shortCode": "aBcD1234",
    "shortUrl": "https://qrcod3.com/q/aBcD1234",
    "destinationUrl": "https://example.com/product/12345",
    "title": "Product 12345 QRCOD3",
    "description": "QRCOD3 for product landing page",
    "createdAt": "2025-12-21T10:30:00Z",
    "imageUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/image",
    "imageBase64": "iVBORw0KGgoAAAANSUhEUgAA...(base64 encoded PNG)",
    "downloadUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/download"
  }
}
POST /api/v1/qr/generate/bulk

Generate multiple QRCOD3s in a single request (max 1000)

Request Body

Parameter Type Required Description
qrCodes array Required Array of QRCOD3 objects (max 1000)
customization object Optional Custom styling applied to all QRCOD3s

Example Request

curl -X POST "https://qrcod3.com/api/v1/qr/generate/bulk" \
  -H "X-API-Key: qr_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "qrCodes": [
      {
        "destinationUrl": "https://example.com/product/1",
        "title": "Product 1",
        "description": "First product"
      },
      {
        "destinationUrl": "https://example.com/product/2",
        "title": "Product 2",
        "description": "Second product"
      }
    ],
    "customization": {
      "foregroundColor": "#5468FF",
      "backgroundColor": "#FFFFFF"
    }
  }'

Example Response

{
  "success": true,
  "bulkSessionId": "bulk_aBcDeFgH12345678",
  "totalCreated": 2,
  "qrCodes": [
    {
      "id": "749397f6-39b8-4a18-ab4a-632001fc3aea",
      "shortCode": "xYz78901",
      "shortUrl": "https://qrcod3.com/q/xYz78901",
      "destinationUrl": "https://example.com/product/1",
      "title": "Product 1",
      "description": "First product",
      "createdAt": "2025-12-21T10:30:00Z",
      "imageUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/image",
      "imageBase64": "iVBORw0KGgoAAAANSUhEUgAA...",
      "downloadUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/download"
    },
    {
      "id": "850497f7-40c9-5b29-bc5b-743002gd4bfb",
      "shortCode": "pQr45678",
      "shortUrl": "https://qrcod3.com/q/pQr45678",
      "destinationUrl": "https://example.com/product/2",
      "title": "Product 2",
      "description": "Second product",
      "createdAt": "2025-12-21T10:30:01Z",
      "imageUrl": "https://qrcod3.com/api/qr-codes/850497f7-40c9-5b29-bc5b-743002gd4bfb/image",
      "imageBase64": "iVBORw0KGgoAAAANSUhEUgAA...",
      "downloadUrl": "https://qrcod3.com/api/qr-codes/850497f7-40c9-5b29-bc5b-743002gd4bfb/download"
    }
  ]
}

QRCOD3 Management

Retrieve and manage existing QRCOD3s.

GET /api/v1/qr/:id

Get details for a specific QRCOD3

Example Response

{
  "success": true,
  "qrCode": {
    "id": "749397f6-39b8-4a18-ab4a-632001fc3aea",
    "shortCode": "aBcD1234",
    "shortUrl": "https://qrcod3.com/q/aBcD1234",
    "destinationUrl": "https://example.com/product/12345",
    "title": "Product 12345 QRCOD3",
    "description": "QRCOD3 for product landing page",
    "scanCount": 142,
    "createdAt": "2025-12-21T10:30:00Z",
    "updatedAt": "2025-12-21T15:45:00Z",
    "imageUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/image",
    "downloadUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/download"
  }
}
GET /api/v1/qr

List all QRCOD3s with pagination and filtering

Query Parameters

Parameter Type Default Description
limit integer 100 Number of results to return
offset integer 0 Number of results to skip
bulkSessionId string - Filter by bulk session ID

Example Request

curl -X GET "https://qrcod3.com/api/v1/qr?limit=50&offset=0" \
  -H "X-API-Key: qr_your_api_key_here"

Example Response

{
  "success": true,
  "total": 2,
  "limit": 50,
  "offset": 0,
  "qrCodes": [
    {
      "id": "749397f6-39b8-4a18-ab4a-632001fc3aea",
      "shortCode": "aBcD1234",
      "shortUrl": "https://qrcod3.com/q/aBcD1234",
      "destinationUrl": "https://example.com/product/12345",
      "title": "Product 12345 QRCOD3",
      "description": "QRCOD3 for product landing page",
      "scanCount": 142,
      "bulkSessionId": null,
      "createdAt": "2025-12-21T10:30:00Z",
      "imageUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/image",
      "downloadUrl": "https://qrcod3.com/api/qr-codes/749397f6-39b8-4a18-ab4a-632001fc3aea/download"
    }
  ]
}

Error Handling

The API uses standard HTTP status codes and returns error details in JSON format.

Common Status Codes

Code Status Description
200 OK Request successful
400 Bad Request Invalid request parameters
401 Unauthorized Invalid or missing API key
404 Not Found Resource not found
429 Too Many Requests Rate limit exceeded
500 Internal Server Error Server error occurred

Error Response Format

{
  "error": "Description of what went wrong"
}

Rate Limits

All API keys are subject to global rate limits to ensure fair usage and system stability.

Global Limits

  • Per Minute: 60 requests
  • Per Day: 10,000 requests
Need higher limits? Contact our enterprise sales team at sales@qrcod3.com to discuss custom rate limits for your organization.

Support

For questions, issues, or feature requests, please contact our support team: