Duplicate QR template

Overview

Duplicate an existing QR code template (by path ID) into a new row under the same store, auto-generating a unique "Copy of …" name. The duplicate counts as a fresh create and is metered against the store's review_qr_code plan allocation.

Prerequisites

  • A bearer token. Callable with Account tokens.
  • The templateId of the record you are targeting.

Base URL

EnvironmentURL
Productionhttps://production-api.shoutaboutus.com
Developmenthttps://development-api.shoutaboutus.com

Endpoint

POST /api/v1/qr-codes/template/{templateId}/duplicate

Authentication

  • Requires a bearer token in the Authorization: Bearer <bearer-token> header.

  • Who can call it: Account tokens.

  • The endpoint loads the original template (own company only, 404 otherwise).

  • Before creating the duplicate, enforceQrCodeTemplateLimit checks the store's review_qr_code allocation.

  • A disabled feature or exhausted hard-stop cap throws FeatureLimitException (HTTP 402).

  • The {templateId} route segment is digit-constrained and supplied to the request validation via validationData.

Rate limit

  • No rate limit.

Path parameters

ParameterTypeRequiredDescription
templateIdintegerRequiredDigits only.

Response

  • data.status (string) — "success".
  • data.data (object) — the new QR code template duplicate, carrying name (Copy of <original>, de-duplicated with (n) suffix), store_id, company_id, template_type, design_html, design_settings, design_html_back, design_settings_back, qr_code_id, plus id/created_at/updated_at.
  • data.message (string) — "QR code template duplicated successfully".

201 Created · 201

{
  "data": {
    "status": "success",
    "data": {
      "id": 12,
      "name": "Copy of Standard A6 Template",
      "store_id": 8748,
      "company_id": 456,
      "template_type": "standard",
      "design_html": "<p>Example content</p>",
      "design_settings": {},
      "design_html_back": null,
      "design_settings_back": null,
      "qr_code_id": 1,
      "created_at": "2026-06-15T10:30:00.000000Z",
      "updated_at": "2026-06-15T10:30:00.000000Z"
    },
    "message": "QR code template duplicated successfully"
  }
}

Errors

StatusMeaning
401The bearer token is missing, expired or invalid
402The QR code template limit of your plan is reached (X-Feature-* headers give the details)
404The template does not exist or belongs to another account
422The request failed validation — the response names the fields
500Unexpected server error

Example request

curl --request POST \
  --url "https://production-api.shoutaboutus.com/api/v1/qr-codes/template/123/duplicate" \
  --header 'Authorization: Bearer <bearer-token>' \
  --header 'Accept: application/json'

Did this page help you?