Dynamic links
A dynamic link is a short code (mqr.sh/<code>) you turn into a QR and print once.
You can change where it points forever, and every scan is counted. This is the core of
MostlyQR — everything else builds on it.
# Create
curl https://mostlyqr.com/api/v1/links \
-H "Authorization: Bearer mtq_live_…" \
-H "Content-Type: application/json" \
-d '{ "destination_url": "https://example.com/page", "title": "Spring menu" }'
| Field | Required | Notes |
|---|---|---|
destination_url |
yes | Where the code redirects (http/https). |
title |
no | A label for your dashboard. |
Returns the created link, including the auto-assigned code and short_url:
{ "code": "AZ4K9", "short_url": "https://mqr.sh/AZ4K9", "destination_url": "https://example.com/page", "title": "Spring menu", "status": "active" }
# List
curl "https://mostlyqr.com/api/v1/links?limit=50" \
-H "Authorization: Bearer mtq_live_…"
# Get one
curl https://mostlyqr.com/api/v1/links/AZ4K9 \
-H "Authorization: Bearer mtq_live_…"
# Repoint or rename
PATCH updates the destination (the whole point of a dynamic code — no reprint) and/or
the title. Every printed copy follows instantly.
curl -X PATCH https://mostlyqr.com/api/v1/links/AZ4K9 \
-H "Authorization: Bearer mtq_live_…" \
-H "Content-Type: application/json" \
-d '{ "destination_url": "https://example.com/new" }'
# Delete
curl -X DELETE https://mostlyqr.com/api/v1/links/AZ4K9 \
-H "Authorization: Bearer mtq_live_…"
# The never-expire guarantee
A printed code keeps resolving for the life of the account — and if a subscription lapses, the code freezes on its last destination rather than breaking. You never hand a customer a dead QR.
# Next
- Analytics — read scans per code.
- Batch — create many at once.
- The full API reference.