Skip to Content
Relink API is in beta.
DocumentationTypes & Schemas

Smartlink Types & Schemas

Common Optional Fields

All smartlink types support these optional fields:

Open Graph Metadata

Used for social media sharing:

{ "openGraph": { "title": "string (max 128 chars, optional)", "description": "string (max 256 chars, optional)", "imageUrl": "string (URL, optional)" } }

Custom HTML

Add custom HTML to head and body sections:

{ "customHtml": { "head": "string (HTML, optional)", "body": "string (HTML, optional)", "active": "boolean (default: false)" } }

Analytics Data (Read-only)

Returned in API responses:

{ "analytics": { "id": "string", "totalClicks": "number", "totalQrCodeScans": "number", "totalFallBack": "number" } }

1. App Type (App Store Redirections)

Used for redirecting users to appropriate app stores based on their device.

Required Fields: configuration with app store links

Subscription Restrictions:

  • Starter: Cannot use macOsAppLink and windowsAppLink
  • Professional/Enterprise: All fields available

Schema:

{ "smartlinkConfig": { "type": "App" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)", "appStoreLink": "string (URL, optional)", "googlePlayLink": "string (URL, optional)", "windowsAppLink": "string (URL, optional) - Professional/Enterprise only", "macOsAppLink": "string (URL, optional) - Professional/Enterprise only", "ipadAppLink": "string (URL, optional)", "appGalleryLink": "string (URL, optional)", "amazonStoreLink": "string (URL, optional)", "fallBackLink": "string (URL, optional)" } }

URL Safety: All app store URLs are validated against Google Safe Browsing API.


2. Url Type (URL Shortener)

Used for URL shortening with optional password protection.

Required Fields: shortener data

Schema:

{ "smartlinkConfig": { "type": "Url" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)" }, "shortener": { "url": "string (URL, required)", "protected": "boolean (optional)", "password": "string (min 6 chars, optional)" } }

3. Landing Type (Landing Pages)

Used for creating custom landing pages with multiple action buttons.

Required Fields: landing and optionally landingButtons

Schema:

{ "smartlinkConfig": { "type": "Landing" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)" }, "landing": { "title": "string (max 128 chars, optional)", "description": "string (max 256 chars, optional)", "logoLink": "string (URL, optional)", "themeColor": "string (hex color, optional)", "layout": "List|Grid (optional)", "theme": "Light|Dark|Auto (optional)" }, "landingButtons": [ { "id": "string", "title": "string (max 256 chars, optional)", "link": "string (URL/tel/mailto, required)", "iconUrl": "string (URL, optional)" } ] }

4. QRTag Type (QR Code Pages)

Used for creating QR code landing pages with action buttons.

Required Fields: qrTag and optionally qrTagButtons

Schema:

{ "smartlinkConfig": { "type": "QRTag" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)" }, "qrTag": { "title": "string (max 256 chars, optional)", "description": "string (max 256 chars, optional)", "logoLink": "string (URL, optional)", "themeColor": "string (hex color, optional)" }, "qrTagButtons": [ { "id": "string", "title": "string (max 256 chars, optional)", "link": "string (required)", "preset": "string (optional)", "position": "number (min 0)" } ] }

5. DigiCard Type (Digital Business Cards)

Used for creating digital business cards with contact information and action buttons.

Required Fields: digiCard and optionally digiCardButtons

Schema:

{ "smartlinkConfig": { "type": "DigiCard" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)" }, "digiCard": { "title": "string (max 256 chars, optional)", "jobTitle": "string (max 128 chars, optional)", "company": "string (max 128 chars, optional)", "logoLink": "string (URL, optional)", "bgLink": "string (URL, optional)", "ctaText": "string (max 32 chars, optional)", "themeColor": "string (hex color, optional)" }, "digiCardButtons": [ { "id": "string", "title": "string (max 256 chars, optional)", "link": "string (required)", "preset": "string (optional)", "position": "number (min 0)" } ] }

6. TxtBin Type (Text Sharing)

Used for sharing text content with optional title and description.

Required Fields: txtBin

Schema:

{ "smartlinkConfig": { "type": "TxtBin" }, "configuration": { "smartlinkName": "string (max 64 chars)", "smartlinkUrl": "string (max 64 chars, alphanumeric only)" }, "txtBin": { "title": "string (max 256 chars, optional)", "description": "string (max 256 chars, optional)", "text": "string (max 2500 chars, optional)" } }

Complete Response Example

When you retrieve a smartlink, the response includes all related data:

{ "id": "clp123abc456def", "status": "Active", "type": "App", "userId": "clp789user123", "createdAt": "2024-01-15T10:30:00.000Z", "updatedAt": "2024-01-15T14:45:00.000Z", "configuration": { "id": "clp123abc456def", "smartlinkName": "My Mobile App", "smartlinkUrl": "my-mobile-app", "smartlinkTempUrl": "temp123", "appStoreLink": "https://apps.apple.com/app/mymobileapp", "googlePlayLink": "https://play.google.com/store/apps/details?id=com.mymobileapp", "fallBackLink": "https://mymobileapp.com" }, "openGraph": { "id": "clp123abc456def", "title": "Download My Mobile App", "description": "The best mobile app for productivity", "imageUrl": "https://mymobileapp.com/assets/og-image.jpg" }, "customHtml": { "id": "clp123abc456def", "head": "<meta name=\"app-id\" content=\"123456789\">", "body": "<script>gtag('event', 'smartlink_view');</script>", "active": true, "createdAt": "2024-01-15T10:30:00.000Z", "updatedAt": "2024-01-15T14:45:00.000Z" }, "analytics": { "id": "clp123abc456def", "totalClicks": 1520, "totalQrCodeScans": 45, "totalFallBack": 12 }, "landing": { /* Landing page data */ }, "qrTag": { /* QR tag data */ }, "digiCard": { /* Digital card data */ }, "shortener": { /* URL shortener data */ }, "txtBin": { /* Text bin data */ } }