# SmartLinks Documentation > Developer and operator documentation for SmartLinks — a digital twin platform that connects physical products to digital experiences via GS1 Digital Link QR codes and NFC. Covers concepts, business-type setup guides, app modules, the JavaScript SDK, and the REST API. SmartLinks is built by ProveAnything. The marketing site is https://www.smartlinks.app. This documentation site is the canonical reference for builders integrating SmartLinks. ## Getting Started - [Documentation home](https://docs.smartlinks.app/docs): Top-level entry point for all documentation - [Help center](https://docs.smartlinks.app/help): FAQs and how-to articles - [Setup hub](https://docs.smartlinks.app/setup): Choose a business type to get a tailored setup guide - [App modules](https://docs.smartlinks.app/setup/apps): Index of all SmartLinks app modules ## Concepts & Guides - [Configuring your mobile portal](https://docs.smartlinks.app/docs/guides/portal-framework): Configure your mobile portal experience - [Shopify Private App Setup](https://docs.smartlinks.app/docs/guides/shopify-private-app-setup) - [How to Create a New Product](https://docs.smartlinks.app/docs/guides/how-to-create-a-new-product): Learn how to add a new product to your Smartlinks account, including details like name, description, GTIN, and images. - [Dynamic Fields](https://docs.smartlinks.app/docs/guides/dynamic-fields) - [How to Set Up Product Ingredients and Allergens](https://docs.smartlinks.app/docs/guides/how-to-set-up-product-ingredients-and-allergens): Learn how to add an ingredient list, use the platform's AI to parse it, and configure specific allergen and dietary preference information for your products. - [Authentication Guide](https://docs.smartlinks.app/docs/guides/authentication-guide): Learn how to authenticate with the Smartlinks API using API keys and bearer tokens - [Creating Links with the API](https://docs.smartlinks.app/docs/guides/creating-links): Complete guide to creating and managing short links using the Smartlinks API - [Webhook Setup Guide](https://docs.smartlinks.app/docs/guides/webhook-setup): Configure webhooks to receive real-time notifications for link events - [Security Best Practices](https://docs.smartlinks.app/docs/guides/security-best-practices): Essential security practices for implementing the Smartlinks API safely and securely ## Business Type Setup Guides - [Music Connect](https://docs.smartlinks.app/setup/music-connect): For bands and musicians ## App Modules - [Music Player](https://docs.smartlinks.app/setup/apps/musicPlayer): Learn how to set up the Music Streaming app, manage your track library, and customize artist profiles to share exclusive content with your fans. - [Voting](https://docs.smartlinks.app/setup/apps/voting): Learn how to set up and manage real-time polls, weighted voting, and proof-based contests for your products using the Smartlinks Voting App. - [Link Page](https://docs.smartlinks.app/setup/apps/linkPage): Learn how to configure and brand your SmartLinks Link Page, including managing link sections, embedding dynamic widgets, and tracking user scan analytics. - [Gig Listings](https://docs.smartlinks.app/setup/apps/gigListing): Learn how to manage your concert schedule with the Gig Listing app, including adding shows, setting up ticket links, and enabling location-based sorting for fans. - [Code Studio](https://docs.smartlinks.app/setup/apps/codeStudio): Learn how to generate unique product identifiers, design custom QR labels, and export data or print physical tags using the Code Studio dashboard. - [Tap To Donate](https://docs.smartlinks.app/setup/apps/tap-to-donate): This guide provides an end-to-end manual for setting up and managing the Tap to Donate app, covering donor settings, Stripe payments, and Gift Aid configurations. - [Competitions](https://docs.smartlinks.app/setup/apps/competitions): Learn how to set up and manage digital giveaways, from creating simple polls to complex form-based entries, including entry rules, CRM integration, and analytics. - [Attendance](https://docs.smartlinks.app/setup/apps/attendance): Set up and manage the Attendance Tracker app to reward fan engagement through event check-ins, geolocation verification, and QR code integration. - [Operating Procedures and Guides](https://docs.smartlinks.app/setup/apps/sops): Learn to create and manage mobile-friendly SOPs and step-by-step guides for setup, safety, and inspections using the Smartlinks admin console. - [Cooking Guide](https://docs.smartlinks.app/setup/apps/cookingGuide): Learn how to create and manage digital cooking instructions, including building reusable guide sets, adding multi-method cooking steps, and assigning them to products. - [Content Pages](https://docs.smartlinks.app/setup/apps/contentPages): Create and publish custom, block-based digital twin pages for your brand. This guide covers using content blocks, section styling, and AI tools to build rich mobile experiences. - [NPS Rating](https://docs.smartlinks.app/setup/apps/nps): Learn how to collect and analyze customer feedback using the NPS Rating app. Track scores, segment results by product facets, and configure targeted survey questions. - [Mailing List](https://docs.smartlinks.app/setup/apps/mailingList): Learn how to configure mailing list signup forms, customize data collection fields, and manage automated newsletter subscriptions for your Smartlinks collection. - [Wine Label](https://docs.smartlinks.app/setup/apps/wineLabel): A guide for wineries and importers to configure the EU Wine E-Label app, covering regulatory compliance, nutrition declarations, and data inheritance models. - [Media](https://docs.smartlinks.app/setup/apps/media): Learn how to manage and display images, videos, and 3D models using interactive carousels, grids, and viewers to enhance your collection or product pages. - [Certification Labels](https://docs.smartlinks.app/setup/apps/certificationLabel): Learn how to configure and display trust marks, quality certifications, and regulatory labels across your product collections to build customer confidence. - [Recipes](https://docs.smartlinks.app/setup/apps/recipes): Learn how to create, import, and manage recipes tied to your products. This guide covers using the Recipe Builder app to publish searchable recipe portals. - [Ingredients](https://docs.smartlinks.app/setup/apps/ingredients): Learn how to manage ingredient lists and allergen warnings for your products using the Ingredients & Allergens app, including AI-powered parsing and dietary labels. - [Nutrition](https://docs.smartlinks.app/setup/apps/nutrition): Learn how to manage and display compliant nutrition labels across your product catalog using the US FDA, EU FIC, and UK Traffic Light formats. - [FAQ App](https://docs.smartlinks.app/setup/apps/faq): Manage and display searchable frequently asked questions for your collections and products using a rich text editor, product-specific tagging, and bulk CSV imports. - [Certificate Designer](https://docs.smartlinks.app/setup/apps/certificate): Learn how to use the Certificate Designer to create and automate dynamic, branded Certificates of Authenticity using a visual editor, AI tools, and Liquid data. - [Related Products](https://docs.smartlinks.app/setup/apps/relatedProducts): Learn how to configure the Related Products app to showcase cross-sell items to customers by matching product facets, setting display styles, and defining purchase actions. - [Receipt Scanner](https://docs.smartlinks.app/setup/apps/receiptScanner): Manage product ownership and warranty registration by allowing customers to scan receipts and serial numbers for AI-verified digital proof of purchase. - [Spare Parts](https://docs.smartlinks.app/setup/apps/spareParts): Learn how to configure and manage a spare parts catalogue that automatically displays matching components and purchase links on your Smartlinks product pages. - [Ownership Checker](https://docs.smartlinks.app/setup/apps/ownershipCheck): Learn how to set up and manage the Ownership Check app to facilitate secure, brand-verified ownership handshakes between item owners and potential buyers. - [Feedback](https://docs.smartlinks.app/setup/apps/feedback): Learn how to set up the Feedback app to collect private, structured customer insights using customizable forms and managed identity settings. - [Social Links](https://docs.smartlinks.app/setup/apps/socialLinks): Learn how to configure and display your brand's social media profiles across the Smartlinks platform with localized, conditional visibility for different audiences. - [Referrals](https://docs.smartlinks.app/setup/apps/referral): Set up and manage a Shopify-integrated referral programme where customers earn commissions for driving sales via personal discount codes and track performance or payouts. - [Photo Stream](https://docs.smartlinks.app/setup/apps/photoStream): Learn how to set up and manage a live event photo wall, including moderation workflows, display customization, and hardware setup for big-screen TV streams. - [Care Label](https://docs.smartlinks.app/setup/apps/careLabel): Learn how to configure digital care labels using a tiered system of collection defaults, facet rules, and product overrides to provide multilingual laundry instructions. ## SDK Reference - [SDK overview](https://docs.smartlinks.app/docs/sdk): JavaScript SDK reference for SmartLinks microapps - [SDK guides](https://docs.smartlinks.app/docs/sdk/guides): Task-oriented walkthroughs for the SDK - [SL.collection](https://docs.smartlinks.app/docs/sdk/collection): Manage collections, settings, and identifiers for your workspace. - [SL.product](https://docs.smartlinks.app/docs/sdk/product): Create and manage products within a collection; metadata, tags, media. - [SL.variant](https://docs.smartlinks.app/docs/sdk/variant): Manage product variants per product; includes serial number helpers. - [SL.asset](https://docs.smartlinks.app/docs/sdk/asset): Upload and manage media assets for collections, products, and proofs. - [SL.batch](https://docs.smartlinks.app/docs/sdk/batch): Group products into batches; manage serial number ranges and lookups. - [SL.crate](https://docs.smartlinks.app/docs/sdk/crate): Organize products in containers/crates for logistics and grouping. - [SL.form](https://docs.smartlinks.app/docs/sdk/form): Build and manage dynamic forms used by apps and workflows. - [SL.appConfiguration](https://docs.smartlinks.app/docs/sdk/appConfiguration): Read/write app configuration and scoped data (collection/product/proof); hosts the deep-link registry. - [SL.app](https://docs.smartlinks.app/docs/sdk/app): Flexible app-scoped objects: use records for structured entities, cases for workflows, and threads for discussions. - [SL.auth](https://docs.smartlinks.app/docs/sdk/auth): Admin authentication and account ops: login/logout, tokens, account info. - [SL.authKit](https://docs.smartlinks.app/docs/sdk/authKit): End‑user auth flows (email/password, OAuth, phone); profiles and verification. - [SL.contact](https://docs.smartlinks.app/docs/sdk/contact): Manage customer contacts; CRUD, lookup, upsert, erase. - [SL.comms](https://docs.smartlinks.app/docs/sdk/comms): Send notifications (push, email, wallet); templating, severity, delivery status. - [SL.broadcasts](https://docs.smartlinks.app/docs/sdk/broadcasts): Define broadcast campaigns; append recipients/events; analytics and CRUD. - [SL.segments](https://docs.smartlinks.app/docs/sdk/segments): Define dynamic/static audience segments; estimate and list recipients; schedule calculations. - [SL.interactions](https://docs.smartlinks.app/docs/sdk/interactions): Log and analyze interactions/outcomes; aggregates and actor lists; interaction definition CRUD. - [SL.loyalty](https://docs.smartlinks.app/docs/sdk/loyalty): Loyalty programmes: schemes, earning rules tied to interactions, member balances, transaction ledger, and manual adjustments. - [SL.journeys](https://docs.smartlinks.app/docs/sdk/journeys): Configure automated flows triggered by events or schedules; steps, rules; full CRUD. - [SL.nfc](https://docs.smartlinks.app/docs/sdk/nfc): Claim and validate NFC tags; perform tag lookups. - [SL.proof](https://docs.smartlinks.app/docs/sdk/proof): Create, update, claim, and list product proofs (digital certificates). - [SL.claimSet](https://docs.smartlinks.app/docs/sdk/claimSet): Manage claim sets and tag assignments; queries, reports, and updates. - [SL.qr](https://docs.smartlinks.app/docs/sdk/qr): Lookup short codes to resolve collection/product/proof context. - [SL.ai](https://docs.smartlinks.app/docs/sdk/ai): Chat completions, RAG (document Q&A), podcast generation, TTS, content/image generation, voice integration. - [SL.serialNumber](https://docs.smartlinks.app/docs/sdk/serialNumber): Assign, lookup, and manage serial numbers across scopes. - [SL.analytics](https://docs.smartlinks.app/docs/sdk/analytics): Functions for analytics operations - [SL.async](https://docs.smartlinks.app/docs/sdk/async): Functions for async operations - [SL.attestation](https://docs.smartlinks.app/docs/sdk/attestation): Functions for attestation operations - [SL.attestations](https://docs.smartlinks.app/docs/sdk/attestations): Functions for attestations operations - [SL.config](https://docs.smartlinks.app/docs/sdk/config): Functions for config operations - [SL.containers](https://docs.smartlinks.app/docs/sdk/containers): Functions for containers operations - [SL.facets](https://docs.smartlinks.app/docs/sdk/facets): Functions for facets operations - [SL.http](https://docs.smartlinks.app/docs/sdk/http): Functions for http operations - [SL.jobs](https://docs.smartlinks.app/docs/sdk/jobs): Functions for jobs operations - [SL.journeysAnalytics](https://docs.smartlinks.app/docs/sdk/journeysAnalytics): Functions for journeysAnalytics operations - [SL.location](https://docs.smartlinks.app/docs/sdk/location): Functions for location operations - [SL.navigation](https://docs.smartlinks.app/docs/sdk/navigation): Functions for navigation operations - [SL.order](https://docs.smartlinks.app/docs/sdk/order): Functions for order operations - [SL.products](https://docs.smartlinks.app/docs/sdk/products): Functions for products operations - [SL.realtime](https://docs.smartlinks.app/docs/sdk/realtime): Functions for realtime operations - [SL.tags](https://docs.smartlinks.app/docs/sdk/tags): Functions for tags operations - [SL.template](https://docs.smartlinks.app/docs/sdk/template): Functions for template operations - [SL.translations](https://docs.smartlinks.app/docs/sdk/translations): Functions for translations operations - [SL.models](https://docs.smartlinks.app/docs/sdk/models): Functions for models operations - [SL.podcast](https://docs.smartlinks.app/docs/sdk/podcast): Functions for podcast operations - [SL.publicClient](https://docs.smartlinks.app/docs/sdk/publicClient): Functions for publicClient operations - [SL.rag](https://docs.smartlinks.app/docs/sdk/rag): Functions for rag operations - [SL.rateLimit](https://docs.smartlinks.app/docs/sdk/rateLimit): Functions for rateLimit operations - [SL.sessions](https://docs.smartlinks.app/docs/sdk/sessions): Functions for sessions operations - [SL.tts](https://docs.smartlinks.app/docs/sdk/tts): Functions for tts operations - [SL.userAppData](https://docs.smartlinks.app/docs/sdk/userAppData): Functions for userAppData operations - [SL.voice](https://docs.smartlinks.app/docs/sdk/voice): Functions for voice operations ## SDK Guides - [App Objects: Cases, Threads & Records](https://docs.smartlinks.app/docs/sdk/guides/app-objects): Three generic app-scoped object types with JSONB zones, visibility levels, and flexible schemas. - [Proof Claiming Methods](https://docs.smartlinks.app/docs/sdk/guides/proof-claiming-methods): NFC tags, serial numbers, virtual proofs, and auto-generated claims for product registration. - [AI & Chat Completions](https://docs.smartlinks.app/docs/sdk/guides/ai): Chat completions, RAG product assistants, voice integration, and podcast generation. - [Liquid Templates](https://docs.smartlinks.app/docs/sdk/guides/liquid-templates): Dynamic content rendering with Liquid templating for emails, notifications, and personalised content. - [Microapp Development Overview](https://docs.smartlinks.app/docs/sdk/guides/overview): Platform overview, SDK minimums, and how to build SmartLinks microapps. - [iframe Responder](https://docs.smartlinks.app/docs/sdk/guides/iframe-responder): Parent-side iframe communication with API proxying, auth sync, and deep linking. - [Container Tracking](https://docs.smartlinks.app/docs/sdk/guides/container-tracking): Physical or logical groupings with hierarchical nesting, item membership, and attestation history. - [App Records Pattern](https://docs.smartlinks.app/docs/sdk/guides/app-records-pattern): Canonical guide for microapps storing per-product, per-variant, per-batch, or rule-targeted data. - [Communications & Broadcasts](https://docs.smartlinks.app/docs/sdk/guides/comms): Transactional sends, multi-channel broadcasts, consent management, push registration, and analytics. - [Building React Components](https://docs.smartlinks.app/docs/sdk/guides/building-react-components): Foundational concepts for building React components in the SmartLinks ecosystem. - [Widget System](https://docs.smartlinks.app/docs/sdk/guides/widgets): Embeddable React components for SmartLinks apps with cross-app navigation and theming. - [iframe Streaming Parent Changes](https://docs.smartlinks.app/docs/sdk/guides/iframe-streaming-parent-changes): Parent-side changes for AI streaming when an embedded SmartLinks app runs in iframe proxy mode. - [Loyalty: Points, Members & Rules](https://docs.smartlinks.app/docs/sdk/guides/loyalty): Build loyalty programmes on any collection with earning rules, balances, and transaction history. - [App Data Storage](https://docs.smartlinks.app/docs/sdk/guides/app-data-storage): User-specific and collection/product-scoped data storage patterns. - [Multi-Page App Architecture](https://docs.smartlinks.app/docs/sdk/guides/mpa): Vite multi-page builds producing separate bundles for public and admin interfaces. - [Caching Strategy](https://docs.smartlinks.app/docs/sdk/guides/caching): Multi-tier caching system with in-memory, sessionStorage, and IndexedDB layers. - [Interactions: Event Tracking](https://docs.smartlinks.app/docs/sdk/guides/interactions): Structured business events and outcomes that drive journeys, dashboards, and aggregated results. - [Containers](https://docs.smartlinks.app/docs/sdk/guides/containers): Full public app experience packaged as embeddable React components. - [AI-Native App Manifests](https://docs.smartlinks.app/docs/sdk/guides/manifests): Structured manifests and prose guides for AI-discoverable, AI-configurable apps. - [Theme System](https://docs.smartlinks.app/docs/sdk/guides/theme-system): Dynamic theming via URL parameters and postMessage for iframe apps. - [app.manifest.json & app.admin.json](https://docs.smartlinks.app/docs/sdk/guides/app-manifest): App configuration files: roles, responsibilities, and how the platform loads them. - [Collection Analytics](https://docs.smartlinks.app/docs/sdk/guides/analytics): Build collection analytics dashboards and fire-and-forget tracking with the SDK. - [Mobile Admin Container](https://docs.smartlinks.app/docs/sdk/guides/mobile-admin-container): In-the-field operator/admin surface optimised for mobile, shipped as a separate bundle. - [Attestations](https://docs.smartlinks.app/docs/sdk/guides/attestations): Postgres-backed, append-only fact log with polymorphic subjects and hash-chain integrity. - [Theme Default Colors](https://docs.smartlinks.app/docs/sdk/guides/theme-defaults): Default HSL color values for light and dark mode themes. - [Product Facets SDK](https://docs.smartlinks.app/docs/sdk/guides/product-facets): Simple SDK-facing reference for the product facet API. - [Analytics Metadata Conventions](https://docs.smartlinks.app/docs/sdk/guides/analytics-metadata-conventions): Recommended standard analytics keys and conventions for custom dimensions. - [Real-Time Messaging](https://docs.smartlinks.app/docs/sdk/guides/realtime): Ably real-time messaging for live chat, polls, presence, and collaborative features. - [Internationalization (i18n)](https://docs.smartlinks.app/docs/sdk/guides/i18n): URL-based language selection, static translations, dynamic overrides, and widget support. - [Translations](https://docs.smartlinks.app/docs/sdk/guides/translations): Managing translation strings and language assets across SmartLinks apps. - [Auth Kit](https://docs.smartlinks.app/docs/sdk/guides/auth-kit): End-user authentication flows: email/password, magic links, OAuth, phone OTP, profiles. - [Forms](https://docs.smartlinks.app/docs/sdk/guides/forms): Platform-managed form definitions and submissions, plus the React forms package. - [Executor Model](https://docs.smartlinks.app/docs/sdk/guides/executor): How the SmartLinks executor evaluates and runs configured app behaviour. - [Deep Link Discovery](https://docs.smartlinks.app/docs/sdk/guides/deep-link-discovery): Register and discover navigable states for portal menus, AI orchestrators, and other apps. - [Utility Functions](https://docs.smartlinks.app/docs/sdk/guides/utils): Portal URL building, condition validation, and common helper functions. - [Native Capability Facade](https://docs.smartlinks.app/docs/sdk/guides/native-facade): Thin contract layer between microapps and host device capabilities (Capacitor, PWA, browser). - [UI Utilities](https://docs.smartlinks.app/docs/sdk/guides/ui-utils): Shared UI helpers and primitives for SmartLinks apps. ## REST API - [API overview](https://docs.smartlinks.app/docs/api): REST API reference, generated from the official OpenAPI spec - [App Configuration endpoints](https://docs.smartlinks.app/docs/api#appconfiguration): Application configuration and settings. - [Assets endpoints](https://docs.smartlinks.app/docs/api#asset): Asset upload, management, and retrieval. - [Async Jobs endpoints](https://docs.smartlinks.app/docs/api#async): Background job management. - [Attestation endpoints](https://docs.smartlinks.app/docs/api#attestation): Attestation and verification endpoints. - [Authentication endpoints](https://docs.smartlinks.app/docs/api#auth): Authentication and authorization. - [AuthKit endpoints](https://docs.smartlinks.app/docs/api#authkit): Public authentication kit endpoints. - [Batch endpoints](https://docs.smartlinks.app/docs/api#batch): Batch processing and serial number management. - [Broadcasts endpoints](https://docs.smartlinks.app/docs/api#broadcasts): Broadcast messaging and campaigns. - [Cases endpoints](https://docs.smartlinks.app/docs/api#cases): Case management endpoints. - [Claim Sets endpoints](https://docs.smartlinks.app/docs/api#claimset): Claim set management for product verification. - [Collections endpoints](https://docs.smartlinks.app/docs/api#collection): Collection creation and management. - [Communications endpoints](https://docs.smartlinks.app/docs/api#comms): Communication templates and messaging. - [Completions endpoints](https://docs.smartlinks.app/docs/api#completions): AI completion and chat endpoints. - [Contacts endpoints](https://docs.smartlinks.app/docs/api#contact): Contact management and lookup. - [Crates endpoints](https://docs.smartlinks.app/docs/api#crate): Crate and packaging management. - [Forms endpoints](https://docs.smartlinks.app/docs/api#form): Form creation and submission. - [Interactions endpoints](https://docs.smartlinks.app/docs/api#interactions): Interaction tracking and analytics. - [Jobs endpoints](https://docs.smartlinks.app/docs/api#jobs): Job scheduling and monitoring. - [Journeys endpoints](https://docs.smartlinks.app/docs/api#journeys): Customer journey automation. - [Journey Analytics endpoints](https://docs.smartlinks.app/docs/api#journeysanalytics): Journey performance analytics. - [Location endpoints](https://docs.smartlinks.app/docs/api#location): Geolocation and location-based services. - [Models endpoints](https://docs.smartlinks.app/docs/api#models): AI model listing and management. - [NFC endpoints](https://docs.smartlinks.app/docs/api#nfc): NFC tag management. - [Orders endpoints](https://docs.smartlinks.app/docs/api#order): Order management and fulfilment. - [Podcast endpoints](https://docs.smartlinks.app/docs/api#podcast): Podcast generation and management. - [Products endpoints](https://docs.smartlinks.app/docs/api#product): Product catalog and management. - [Proofs endpoints](https://docs.smartlinks.app/docs/api#proof): Product proof generation and verification. - [Public API endpoints](https://docs.smartlinks.app/docs/api#publicapi): Public-facing, unauthenticated endpoints. - [QR Codes endpoints](https://docs.smartlinks.app/docs/api#qr): QR code generation and resolution. - [RAG endpoints](https://docs.smartlinks.app/docs/api#rag): Retrieval-augmented generation endpoints. - [Realtime endpoints](https://docs.smartlinks.app/docs/api#realtime): Realtime event streaming. - [Records endpoints](https://docs.smartlinks.app/docs/api#records): Record management within cases. - [Segments endpoints](https://docs.smartlinks.app/docs/api#segments): Audience segmentation. - [Sessions endpoints](https://docs.smartlinks.app/docs/api#sessions): AI session management. - [Tags endpoints](https://docs.smartlinks.app/docs/api#tags): Tag management for categorisation. - [Templates endpoints](https://docs.smartlinks.app/docs/api#template): Template management. - [Threads endpoints](https://docs.smartlinks.app/docs/api#threads): Threaded conversation endpoints. - [Text-to-Speech endpoints](https://docs.smartlinks.app/docs/api#tts): Text-to-speech synthesis endpoints. - [User App Data endpoints](https://docs.smartlinks.app/docs/api#userappdata): Per-user application data storage. - [Variants endpoints](https://docs.smartlinks.app/docs/api#variant): Product variant management. - [Voice endpoints](https://docs.smartlinks.app/docs/api#voice): Voice cloning and management. ## Optional - [Full documentation (concatenated markdown)](https://docs.smartlinks.app/llms-full.txt): Every public page in a single file for ingestion in one fetch. - [POST /admin/auth/requestJWT](https://docs.smartlinks.app/docs/api/auth/auth-requestadminjwt): Logout (clears bearerToken for future API calls). - [POST /admin/collection](https://docs.smartlinks.app/docs/api/collection/collection-create): Update a specific settings group for a collection (admin endpoint). - [POST /admin/collection/{collectionId}/async/jobs](https://docs.smartlinks.app/docs/api/async/async-enqueueasyncjob): Enqueue a background job for a collection POST /admin/collection/:collectionId/async/jobs (202) - [GET /admin/collection/{collectionId}/async/jobs/{jobId}](https://docs.smartlinks.app/docs/api/async/async-getasyncjobstatus): Enqueue a background job for a collection POST /admin/collection/:collectionId/async/jobs (202) / export async function - [GET /admin/collection/{collectionId}/jobs/{jobId}](https://docs.smartlinks.app/docs/api/jobs/jobs-getjob): List visible jobs for a collection GET /admin/collection/:collectionId/jobs / export async function listJobs( collection - [GET /admin/collection/{collectionId}/jobs{qs}](https://docs.smartlinks.app/docs/api/jobs/jobs-listjobs): List visible jobs for a collection GET /admin/collection/:collectionId/jobs - [GET /admin/collection/{collectionId}/product/{collectionId}/batch/{batchId}](https://docs.smartlinks.app/docs/api/batch/batch-get): Get a single batch by ID for a collection and product (admin only). - [PUT /admin/collection/{collectionId}/product/{collectionId}/batch/{batchId}](https://docs.smartlinks.app/docs/api/batch/batch-update): Update a batch for a collection and product (admin only). - [DELETE /admin/collection/{collectionId}/product/{collectionId}/batch/{batchId}](https://docs.smartlinks.app/docs/api/batch/batch-remove): Delete a batch for a collection and product (admin only). - [GET /admin/collection/{collectionId}/product/{collectionId}/variant/{variantId}](https://docs.smartlinks.app/docs/api/variant/variant-get): Get a single variant by ID for a collection and product (admin only). - [PUT /admin/collection/{collectionId}/product/{collectionId}/variant/{variantId}](https://docs.smartlinks.app/docs/api/variant/variant-update): Update a variant for a collection and product (admin only). - [DELETE /admin/collection/{collectionId}/product/{collectionId}/variant/{variantId}](https://docs.smartlinks.app/docs/api/variant/variant-remove): Delete a variant for a collection and product (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/batch](https://docs.smartlinks.app/docs/api/batch/batch-list): List all batches for a collection and product (admin only). - [POST /admin/collection/{collectionId}/product/{productId}/batch](https://docs.smartlinks.app/docs/api/batch/batch-create): List all batches for a collection and product (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/variant](https://docs.smartlinks.app/docs/api/variant/variant-list): List all variants for a collection and product (admin only). - [POST /admin/collection/{collectionId}/product/{productId}/variant](https://docs.smartlinks.app/docs/api/variant/variant-create): List all variants for a collection and product (admin only). - [PUT /admin/collection/{collectionId}](https://docs.smartlinks.app/docs/api/collection/collection-update): Create a new collection (admin only). - [DELETE /admin/collection/{collectionId}](https://docs.smartlinks.app/docs/api/collection/collection-remove): Update a collection (admin only). - [POST /admin/collection/{collectionId}/ai/configureAssistant](https://docs.smartlinks.app/docs/api/rag/rag-configureassistant): Get specific model information / export async function get(collectionId: string, modelId: string): Promise { co - [POST /admin/collection/{collectionId}/ai/createCache](https://docs.smartlinks.app/docs/api/voice/voice-createcache): Search stock photos or similar via AI (admin) / export async function searchPhotos( collectionId: string, params: AISearchPhotosRequest ): Promise { const path = `/admin/collection/${encodeURIComponent(collectionId)}/ai/searchPhotos` return post(path, params) } /** Upload a file for AI usage (admin). - [POST /admin/collection/{collectionId}/ai/generateImage](https://docs.smartlinks.app/docs/api/voice/voice-generateimage): Generate text/content via AI (admin) / export async function generateContent( collectionId: string, params: AIGenerateCo - [POST /admin/collection/{collectionId}/ai/generatePodcast](https://docs.smartlinks.app/docs/api/podcast/podcast-generate): Reset rate limit for a user / export async function reset(collectionId: string, userId: string): Promise<{ success: bool - [POST /admin/collection/{collectionId}/ai/indexDocument](https://docs.smartlinks.app/docs/api/rag/rag-indexdocument): List available AI models / export async function list(collectionId: string): Promise<{ object: 'list'; data: AIModel[] } - [GET /admin/collection/{collectionId}/ai/models/{modelId}](https://docs.smartlinks.app/docs/api/models/models-get): List available AI models / export async function list(collectionId: string): Promise<{ object: 'list'; data: AIModel[] } - [GET /admin/collection/{collectionId}/ai/podcast/{podcastId}](https://docs.smartlinks.app/docs/api/podcast/podcast-getstatus): Generate a NotebookLM-style conversational podcast from product documents / export async function generate( collectionId - [POST /admin/collection/{collectionId}/ai/searchPhotos](https://docs.smartlinks.app/docs/api/voice/voice-searchphotos): Generate text/content via AI (admin) / export async function generateContent( collectionId: string, params: AIGenerateCo - [GET /admin/collection/{collectionId}/ai/sessions/stats](https://docs.smartlinks.app/docs/api/sessions/sessions-stats): Configure AI assistant behavior / export async function configureAssistant( collectionId: string, request: ConfigureAssi - [POST /admin/collection/{collectionId}/ai/tts](https://docs.smartlinks.app/docs/api/tts/tts-generate): Get podcast generation status / export async function getStatus(collectionId: string, podcastId: string): Promise { const path = `/admin/collection/${encodeURIComponent(collectionId)}/ai/generateImage` return post(path, params) } /** Search stock photos or similar via AI (admin) / export async function searchPhotos( collectionId: string, params: AISearchPhotosRequest ): Promise { const path = `/admin/collection/${encodeURIComponent(collectionId)}/ai/searchPhotos` return post(path, params) } /** Upload a file for AI usage (admin). - [POST /admin/collection/{collectionId}/ai/v1/chat/completions](https://docs.smartlinks.app/docs/api/completions/completions-create): Create a chat completion (streaming or non-streaming) - [POST /admin/collection/{collectionId}/assignSN/{codeId}](https://docs.smartlinks.app/docs/api/collection/collection-assignsn): Look up a serial number by code for a collection (admin only). - [POST /admin/collection/{collectionId}/authKit](https://docs.smartlinks.app/docs/api/authkit/authkit-create): authKit.create - [GET /admin/collection/{collectionId}/authKit/{authKitId}](https://docs.smartlinks.app/docs/api/authkit/authkit-get): authKit.get - [PUT /admin/collection/{collectionId}/authKit/{authKitId}](https://docs.smartlinks.app/docs/api/authkit/authkit-update): authKit.update - [DELETE /admin/collection/{collectionId}/authKit/{authKitId}](https://docs.smartlinks.app/docs/api/authkit/authkit-remove): authKit.remove - [GET /admin/collection/{collectionId}/batch](https://docs.smartlinks.app/docs/api/batch/batch-searchincollection): batch.searchInCollection - [GET /admin/collection/{collectionId}/batch/{batchId}](https://docs.smartlinks.app/docs/api/batch/batch-findincollection): Find a specific batch by ID across all products in a collection. - [GET /admin/collection/{collectionId}/batch/{batchId}/tags](https://docs.smartlinks.app/docs/api/batch/batch-getbatchtags): Get all tags/codes assigned to a specific batch. - [GET /admin/collection/{collectionId}/broadcasts](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-list): broadcasts.list - [POST /admin/collection/{collectionId}/broadcasts](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-create): broadcasts.create - [POST /admin/collection/{collectionId}/broadcasts/append](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-append): broadcasts.append - [POST /admin/collection/{collectionId}/broadcasts/append/bulk](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-appendbulk): broadcasts.appendBulk - [GET /admin/collection/{collectionId}/broadcasts/{id}](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-get): broadcasts.get - [PATCH /admin/collection/{collectionId}/broadcasts/{id}](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-update): broadcasts.update - [DELETE /admin/collection/{collectionId}/broadcasts/{id}](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-remove): broadcasts.remove - [POST /admin/collection/{collectionId}/broadcasts/{id}/preview](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-preview): broadcasts.preview - [GET /admin/collection/{collectionId}/broadcasts/{id}/recipients{qs}](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-recipients): broadcasts.recipients - [POST /admin/collection/{collectionId}/broadcasts/{id}/send/manual](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-sendmanual): broadcasts.sendManual - [POST /admin/collection/{collectionId}/broadcasts/{id}/send/test](https://docs.smartlinks.app/docs/api/broadcasts/broadcasts-sendtest): broadcasts.sendTest - [GET /admin/collection/{collectionId}/claimSet](https://docs.smartlinks.app/docs/api/claimset/claimset-getallforcollection): Get all claim sets for a collection. - [POST /admin/collection/{collectionId}/claimSet](https://docs.smartlinks.app/docs/api/claimset/claimset-createforcollection): Perform a tag query for a collection. - [PUT /admin/collection/{collectionId}/claimSet](https://docs.smartlinks.app/docs/api/claimset/claimset-updateforcollection): Create a new claim set for a collection. - [POST /admin/collection/{collectionId}/claimSet/{collectionId}/assignClaims](https://docs.smartlinks.app/docs/api/claimset/claimset-assignclaims): Assign claims to a claim set. - [POST /admin/collection/{collectionId}/claimSet/{collectionId}/makeClaim](https://docs.smartlinks.app/docs/api/claimset/claimset-makeclaim): Update a claim set for a collection. - [POST /admin/collection/{collectionId}/claimSet/tagQuery](https://docs.smartlinks.app/docs/api/claimset/claimset-tagquery): Get tag summary for a collection. - [GET /admin/collection/{collectionId}/claimSet/tagSummary](https://docs.smartlinks.app/docs/api/claimset/claimset-gettagsummary): Get assigned tags for a claim set. - [POST /admin/collection/{collectionId}/claimSet/updateClaimData](https://docs.smartlinks.app/docs/api/claimset/claimset-updateclaimdata): Update claim data for a collection. - [GET /admin/collection/{collectionId}/claimSet/{claimSetId}](https://docs.smartlinks.app/docs/api/claimset/claimset-getforcollection): Get all claim sets for a collection. - [GET /admin/collection/{collectionId}/claimSet/{claimSetId}/assignedTags](https://docs.smartlinks.app/docs/api/claimset/claimset-getassignedtags): Get a report for a claim set. - [GET /admin/collection/{collectionId}/claimSet/{claimSetId}/report](https://docs.smartlinks.app/docs/api/claimset/claimset-getreport): Get all tags for a claim set. - [GET /admin/collection/{collectionId}/claimSet/{claimSetId}/tags](https://docs.smartlinks.app/docs/api/claimset/claimset-getalltags): Get a specific claim set for a collection. - [PATCH /admin/collection/{collectionId}/comm.settings](https://docs.smartlinks.app/docs/api/comms/comms-patchsettings): Admin: Get current comms settings for a collection. - [GET /admin/collection/{collectionId}/comm.settings{qs}](https://docs.smartlinks.app/docs/api/comms/comms-getsettings): Public: Register a Web Push subscription under unified comms. - [POST /admin/collection/{collectionId}/comm/log](https://docs.smartlinks.app/docs/api/comms/comms-logcommunicationevent): Logging: Append a single communication event. - [POST /admin/collection/{collectionId}/comm/log/bulk](https://docs.smartlinks.app/docs/api/comms/comms-logbulkcommunicationevents): Logging: Append a single communication event. - [POST /admin/collection/{collectionId}/comm/query/by-user](https://docs.smartlinks.app/docs/api/comms/comms-querybyuser): Public: Resolve contacts for a subject with identity hints. - [POST /admin/collection/{collectionId}/comm/query/recipient-ids](https://docs.smartlinks.app/docs/api/comms/comms-queryrecipientids): Analytics: Query communication events by user or contact. - [POST /admin/collection/{collectionId}/comm/query/recipients/with-action](https://docs.smartlinks.app/docs/api/comms/comms-queryrecipientswithaction): Analytics: Recipients who did not perform an action. - [POST /admin/collection/{collectionId}/comm/query/recipients/without-action](https://docs.smartlinks.app/docs/api/comms/comms-queryrecipientswithoutaction): Analytics: Recipient IDs for a communication source. - [POST /admin/collection/{collectionId}/comm/send](https://docs.smartlinks.app/docs/api/comms/comms-sendtransactional): Send a single transactional message to one contact using a template. - [GET /admin/collection/{collectionId}/contacts](https://docs.smartlinks.app/docs/api/contact/contact-list): contact.list - [POST /admin/collection/{collectionId}/contacts](https://docs.smartlinks.app/docs/api/contact/contact-create): contact.create - [GET /admin/collection/{collectionId}/contacts/lookup](https://docs.smartlinks.app/docs/api/contact/contact-lookup): contact.lookup - [POST /admin/collection/{collectionId}/contacts/upsert](https://docs.smartlinks.app/docs/api/contact/contact-upsert): contact.upsert - [GET /admin/collection/{collectionId}/contacts/{contactId}](https://docs.smartlinks.app/docs/api/contact/contact-get): contact.get - [PATCH /admin/collection/{collectionId}/contacts/{contactId}](https://docs.smartlinks.app/docs/api/contact/contact-update): contact.update - [DELETE /admin/collection/{collectionId}/contacts/{contactId}](https://docs.smartlinks.app/docs/api/contact/contact-remove): contact.remove - [POST /admin/collection/{collectionId}/contacts/{contactId}/erase](https://docs.smartlinks.app/docs/api/contact/contact-erase): contact.erase - [GET /admin/collection/{collectionId}/crate](https://docs.smartlinks.app/docs/api/crate/crate-list): List crates for a collection with pagination support. - [POST /admin/collection/{collectionId}/crate](https://docs.smartlinks.app/docs/api/crate/crate-create): Create a new crate for a collection (admin only). - [GET /admin/collection/{collectionId}/crate/{crateId}](https://docs.smartlinks.app/docs/api/crate/crate-get): Get a single crate by ID for a collection (admin only). - [PUT /admin/collection/{collectionId}/crate/{crateId}](https://docs.smartlinks.app/docs/api/crate/crate-update): Update a crate for a collection (admin only). - [DELETE /admin/collection/{collectionId}/crate/{crateId}](https://docs.smartlinks.app/docs/api/crate/crate-remove): Delete a crate for a collection (admin only). - [POST /admin/collection/{collectionId}/form](https://docs.smartlinks.app/docs/api/form/form-create): List all forms for a collection. - [PUT /admin/collection/{collectionId}/form/{formId}](https://docs.smartlinks.app/docs/api/form/form-update): List all forms for a collection. - [DELETE /admin/collection/{collectionId}/form/{formId}](https://docs.smartlinks.app/docs/api/form/form-remove): Create a new form for a collection (admin only). - [GET /admin/collection/{collectionId}/getSN](https://docs.smartlinks.app/docs/api/collection/collection-getsn): Delete a collection (admin only). - [POST /admin/collection/{collectionId}/interactions](https://docs.smartlinks.app/docs/api/interactions/interactions-create): interactions.create - [POST /admin/collection/{collectionId}/interactions/counts-by-outcome](https://docs.smartlinks.app/docs/api/interactions/interactions-countsbyoutcome): POST /admin/collection/:collectionId/interactions/query Flexible query for interaction events with optional includes. - [POST /admin/collection/{collectionId}/interactions/query](https://docs.smartlinks.app/docs/api/interactions/interactions-query): POST /admin/collection/:collectionId/interactions/query Flexible query for interaction events with optional includes. - [GET /admin/collection/{collectionId}/interactions/{id}](https://docs.smartlinks.app/docs/api/interactions/interactions-get): interactions.get - [PATCH /admin/collection/{collectionId}/interactions/{id}](https://docs.smartlinks.app/docs/api/interactions/interactions-update): interactions.update - [DELETE /admin/collection/{collectionId}/interactions/{id}](https://docs.smartlinks.app/docs/api/interactions/interactions-remove): interactions.remove - [GET /admin/collection/{collectionId}/interactions/{qs}](https://docs.smartlinks.app/docs/api/interactions/interactions-list): interactions.list - [GET /admin/collection/{collectionId}/journeys](https://docs.smartlinks.app/docs/api/journeys/journeys-list): journeys.list - [POST /admin/collection/{collectionId}/journeys](https://docs.smartlinks.app/docs/api/journeys/journeys-create): journeys.create - [POST /admin/collection/{collectionId}/journeys.analytics/{journeyId}/funnel-report](https://docs.smartlinks.app/docs/api/journeysanalytics/journeysanalytics-funnelreport): POST /admin/collection/:collectionId/journeys.analytics/:journeyId/steps/:stepId/recipients Returns recipient IDs for a given journey step. - [POST /admin/collection/{collectionId}/journeys.analytics/{journeyId}/stats](https://docs.smartlinks.app/docs/api/journeysanalytics/journeysanalytics-stats): POST /admin/collection/:collectionId/journeys.analytics/:journeyId/stats Computes journey stats over a time window; outcome defaults to 'success'. - [POST /admin/collection/{collectionId}/journeys.analytics/{journeyId}/steps/{stepId}/recipients](https://docs.smartlinks.app/docs/api/journeysanalytics/journeysanalytics-recipients): POST /admin/collection/:collectionId/journeys.analytics/:journeyId/stats Computes journey stats over a time window; outcome defaults to 'success'. - [GET /admin/collection/{collectionId}/journeys/{id}](https://docs.smartlinks.app/docs/api/journeys/journeys-get): journeys.get - [PATCH /admin/collection/{collectionId}/journeys/{id}](https://docs.smartlinks.app/docs/api/journeys/journeys-update): journeys.update - [DELETE /admin/collection/{collectionId}/journeys/{id}](https://docs.smartlinks.app/docs/api/journeys/journeys-remove): journeys.remove - [POST /admin/collection/{collectionId}/location](https://docs.smartlinks.app/docs/api/location/location-create): Platform: Create a global location (super admin; requires features.adminApps) POST /platform/location / export async fun - [GET /admin/collection/{collectionId}/location/search{qs}](https://docs.smartlinks.app/docs/api/location/location-search): Platform: Create a global location (super admin; requires features.adminApps) POST /platform/location / export async fun - [GET /admin/collection/{collectionId}/lookupSN/{codeId}](https://docs.smartlinks.app/docs/api/collection/collection-lookupsn): Look up a serial number by code for a collection (admin only). - [GET /admin/collection/{collectionId}/orders](https://docs.smartlinks.app/docs/api/order/order-list): List orders for a collection with optional filters and pagination. - [POST /admin/collection/{collectionId}/orders](https://docs.smartlinks.app/docs/api/order/order-create): Create a new order with items. - [POST /admin/collection/{collectionId}/orders/analytics/bulk](https://docs.smartlinks.app/docs/api/order/order-getbulkanalytics): Get analytics summary for multiple orders at once. - [POST /admin/collection/{collectionId}/orders/analytics/summary](https://docs.smartlinks.app/docs/api/order/order-getcollectionsummary): Get collection-wide analytics summary across all orders. - [POST /admin/collection/{collectionId}/orders/analytics/{orderId}](https://docs.smartlinks.app/docs/api/order/order-getanalytics): order.getAnalytics - [POST /admin/collection/{collectionId}/orders/analytics/{orderId}/locations](https://docs.smartlinks.app/docs/api/order/order-getlocationhistory): Get location-based scan history for an order's tags. - [POST /admin/collection/{collectionId}/orders/analytics/{orderId}/timeline](https://docs.smartlinks.app/docs/api/order/order-gettimeline): Get chronological timeline of all scan events for an order's tags. - [GET /admin/collection/{collectionId}/orders/batch/{batchId}](https://docs.smartlinks.app/docs/api/order/order-findbybatch): Find all orders containing items from a specific batch. - [GET /admin/collection/{collectionId}/orders/batch/{batchId}/items](https://docs.smartlinks.app/docs/api/order/order-finditemsbybatch): Get individual order items (not full orders) for a specific batch. - [GET /admin/collection/{collectionId}/orders/ids/{attribute}/{value}](https://docs.smartlinks.app/docs/api/order/order-getorderidsbyattribute): order.getOrderIdsByAttribute - [POST /admin/collection/{collectionId}/orders/lookup](https://docs.smartlinks.app/docs/api/order/order-lookup): order.lookup - [GET /admin/collection/{collectionId}/orders/product/{productId}](https://docs.smartlinks.app/docs/api/order/order-findbyproduct): Find all orders containing items with a specific product ID. - [GET /admin/collection/{collectionId}/orders/product/{productId}/items](https://docs.smartlinks.app/docs/api/order/order-finditemsbyproduct): Get individual order items for a specific product. - [POST /admin/collection/{collectionId}/orders/query](https://docs.smartlinks.app/docs/api/order/order-query): order.query - [GET /admin/collection/{collectionId}/orders/reports](https://docs.smartlinks.app/docs/api/order/order-reports): order.reports - [GET /admin/collection/{collectionId}/orders/variant/{variantId}](https://docs.smartlinks.app/docs/api/order/order-findbyvariant): Find all orders containing items from a specific variant. - [GET /admin/collection/{collectionId}/orders/variant/{variantId}/items](https://docs.smartlinks.app/docs/api/order/order-finditemsbyvariant): Get individual order items for a specific variant. - [GET /admin/collection/{collectionId}/orders/{orderId}](https://docs.smartlinks.app/docs/api/order/order-get): Get a single order by ID. - [PUT /admin/collection/{collectionId}/orders/{orderId}](https://docs.smartlinks.app/docs/api/order/order-update): Update order status or metadata. - [DELETE /admin/collection/{collectionId}/orders/{orderId}](https://docs.smartlinks.app/docs/api/order/order-remove): Delete an order and all its items (cascade delete). - [GET /admin/collection/{collectionId}/orders/{orderId}/items](https://docs.smartlinks.app/docs/api/order/order-getitems): Get items from an order with pagination support. - [POST /admin/collection/{collectionId}/orders/{orderId}/items](https://docs.smartlinks.app/docs/api/order/order-additems): Add additional items to an existing order. - [GET /admin/collection/{collectionId}/owner/{userId}](https://docs.smartlinks.app/docs/api/contact/contact-getuser): contact.getUser - [POST /admin/collection/{collectionId}/product](https://docs.smartlinks.app/docs/api/product/product-create): Create a new product for a collection (admin only). - [PUT /admin/collection/{collectionId}/product/{productId}](https://docs.smartlinks.app/docs/api/product/product-update): Update a product for a collection (admin only). - [DELETE /admin/collection/{collectionId}/product/{productId}](https://docs.smartlinks.app/docs/api/product/product-remove): Delete a product for a collection (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/batch/{batchId}/getSN](https://docs.smartlinks.app/docs/api/batch/batch-getsn): Get serial numbers for a batch (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/batch/{batchId}/lookupSN/{codeId}](https://docs.smartlinks.app/docs/api/batch/batch-lookupsn): Look up a serial number by code for a batch (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/batch/{batchId}/proof](https://docs.smartlinks.app/docs/api/proof/proof-getbybatch): Get proofs for a product (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/getSN](https://docs.smartlinks.app/docs/api/product/product-getsn): Delete a product for a collection (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/lookupSN/{codeId}](https://docs.smartlinks.app/docs/api/product/product-lookupsn): Look up a serial number by code for a product (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/proof](https://docs.smartlinks.app/docs/api/proof/proof-getbyproduct): Delete a proof for a product (admin only). - [POST /admin/collection/{collectionId}/product/{productId}/proof](https://docs.smartlinks.app/docs/api/proof/proof-create): List all Proofs for a Collection. - [POST /admin/collection/{collectionId}/product/{productId}/proof/find](https://docs.smartlinks.app/docs/api/proof/proof-findbyproduct): Get proofs for a user in a collection (admin only). - [PUT /admin/collection/{collectionId}/product/{productId}/proof/{proofId}](https://docs.smartlinks.app/docs/api/proof/proof-update): Create a proof for a product (admin only). - [DELETE /admin/collection/{collectionId}/product/{productId}/proof/{proofId}](https://docs.smartlinks.app/docs/api/proof/proof-remove): Delete a proof for a product (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/variant/{variantId}/getSN](https://docs.smartlinks.app/docs/api/variant/variant-getsn): Get serial numbers for a variant (admin only). - [GET /admin/collection/{collectionId}/product/{productId}/variant/{variantId}/lookupSN/{codeId}](https://docs.smartlinks.app/docs/api/variant/variant-lookupsn): Look up a serial number by code for a variant (admin only). - [GET /admin/collection/{collectionId}/proof/findByUser/{userId}](https://docs.smartlinks.app/docs/api/proof/proof-getbyuser): Delete a proof for a product (admin only). - [GET /admin/collection/{collectionId}/segments](https://docs.smartlinks.app/docs/api/segments/segments-list): segments.list - [POST /admin/collection/{collectionId}/segments](https://docs.smartlinks.app/docs/api/segments/segments-create): segments.create - [GET /admin/collection/{collectionId}/segments/{id}](https://docs.smartlinks.app/docs/api/segments/segments-get): segments.get - [PATCH /admin/collection/{collectionId}/segments/{id}](https://docs.smartlinks.app/docs/api/segments/segments-update): segments.update - [DELETE /admin/collection/{collectionId}/segments/{id}](https://docs.smartlinks.app/docs/api/segments/segments-remove): segments.remove - [POST /admin/collection/{collectionId}/segments/{id}/calculate](https://docs.smartlinks.app/docs/api/segments/segments-calculate): segments.calculate - [GET /admin/collection/{collectionId}/segments/{id}/recipients](https://docs.smartlinks.app/docs/api/segments/segments-recipients): segments.recipients - [POST /admin/collection/{collectionId}/settings/{settingGroup}](https://docs.smartlinks.app/docs/api/collection/collection-updatesettings): Retrieve all configured app module definitions for a collection (public endpoint). - [GET /admin/collection/{collectionId}/tags](https://docs.smartlinks.app/docs/api/tags/tags-list): List all tags for a collection with optional filters and pagination. - [POST /admin/collection/{collectionId}/tags](https://docs.smartlinks.app/docs/api/tags/tags-create): Create a single tag mapping. - [POST /admin/collection/{collectionId}/tags/batch](https://docs.smartlinks.app/docs/api/tags/tags-createbatch): tags.createBatch - [GET /admin/collection/{collectionId}/tags/{tagId}](https://docs.smartlinks.app/docs/api/tags/tags-get): Get a single tag mapping by tagId. - [PUT /admin/collection/{collectionId}/tags/{tagId}](https://docs.smartlinks.app/docs/api/tags/tags-update): Update an existing tag mapping. - [DELETE /admin/collection/{collectionId}/tags/{tagId}](https://docs.smartlinks.app/docs/api/tags/tags-remove): Delete a tag mapping. - [GET /admin/collection/{collectionId}/template](https://docs.smartlinks.app/docs/api/template/template-getall): template.getAll - [POST /admin/collection/{collectionId}/template](https://docs.smartlinks.app/docs/api/template/template-create): template.create - [POST /admin/collection/{collectionId}/template/render/source](https://docs.smartlinks.app/docs/api/template/template-rendersource): template.renderSource - [GET /admin/collection/{collectionId}/template/{templateId}](https://docs.smartlinks.app/docs/api/template/template-get): template.get - [PUT /admin/collection/{collectionId}/template/{templateId}](https://docs.smartlinks.app/docs/api/template/template-update): template.update - [POST /admin/collection/{collectionId}/template/{templateId}/render](https://docs.smartlinks.app/docs/api/template/template-render): template.render - [GET /api/admin/auth/push](https://docs.smartlinks.app/docs/api/realtime/realtime-getadmintoken): Get an Ably token for admin real-time communication. - [GET /api/public/push/token](https://docs.smartlinks.app/docs/api/realtime/realtime-getpublictoken): realtime.getPublicToken - [GET /authKit/{authKitId}/config](https://docs.smartlinks.app/docs/api/authkit/authkit-load): authKit.load - [POST /authkit/{clientId}/account/change-email](https://docs.smartlinks.app/docs/api/authkit/authkit-changeemail): authKit.changeEmail - [POST /authkit/{clientId}/account/change-password](https://docs.smartlinks.app/docs/api/authkit/authkit-changepassword): authKit.changePassword - [POST /authkit/{clientId}/account/delete](https://docs.smartlinks.app/docs/api/authkit/authkit-deleteaccount): authKit.deleteAccount - [GET /authkit/{clientId}/account/profile](https://docs.smartlinks.app/docs/api/authkit/authkit-getprofile): authKit.getProfile - [POST /authkit/{clientId}/account/update-phone](https://docs.smartlinks.app/docs/api/authkit/authkit-updatephone): authKit.updatePhone - [POST /authkit/{clientId}/account/update-profile](https://docs.smartlinks.app/docs/api/authkit/authkit-updateprofile): authKit.updateProfile - [POST /authkit/{clientId}/account/verify-email-change](https://docs.smartlinks.app/docs/api/authkit/authkit-verifyemailchange): authKit.verifyEmailChange - [POST /authkit/{clientId}/auth/complete-reset](https://docs.smartlinks.app/docs/api/authkit/authkit-completepasswordreset): authKit.completePasswordReset - [POST /authkit/{clientId}/auth/google](https://docs.smartlinks.app/docs/api/authkit/authkit-googlelogin): Namespace containing helper functions for the new AuthKit API. - [POST /authkit/{clientId}/auth/login](https://docs.smartlinks.app/docs/api/authkit/authkit-login): Namespace containing helper functions for the new AuthKit API. - [POST /authkit/{clientId}/auth/phone/send-code](https://docs.smartlinks.app/docs/api/authkit/authkit-sendphonecode): Send a magic link email to the user (public). - [POST /authkit/{clientId}/auth/phone/verify](https://docs.smartlinks.app/docs/api/authkit/authkit-verifyphonecode): Verify a magic link token and authenticate/create the user (public). - [POST /authkit/{clientId}/auth/register](https://docs.smartlinks.app/docs/api/authkit/authkit-register): Namespace containing helper functions for the new AuthKit API. - [POST /authkit/{clientId}/auth/resend-verification](https://docs.smartlinks.app/docs/api/authkit/authkit-resendemailverification): authKit.resendEmailVerification - [POST /authkit/{clientId}/auth/reset-password](https://docs.smartlinks.app/docs/api/authkit/authkit-requestpasswordreset): Send phone verification code (public). - [POST /authkit/{clientId}/auth/send-verification](https://docs.smartlinks.app/docs/api/authkit/authkit-sendemailverification): authKit.sendEmailVerification - [POST /authkit/{clientId}/auth/verify-email](https://docs.smartlinks.app/docs/api/authkit/authkit-verifyemail): authKit.verifyEmail - [POST /authkit/{clientId}/auth/verify-reset-token](https://docs.smartlinks.app/docs/api/authkit/authkit-verifyresettoken): authKit.verifyResetToken - [POST /authkit/{clientId}/magic-link/send](https://docs.smartlinks.app/docs/api/authkit/authkit-sendmagiclink): Login with email + password (public). - [POST /authkit/{clientId}/magic-link/verify](https://docs.smartlinks.app/docs/api/authkit/authkit-verifymagiclink): Google OAuth login (public). - [POST /platform/location](https://docs.smartlinks.app/docs/api/location/location-createglobal): Platform: Create a global location (super admin; requires features.adminApps) POST /platform/location - [GET /public/auth/account](https://docs.smartlinks.app/docs/api/auth/auth-getaccount): Gets current account information for the logged in user. - [GET /public/auth/app/{appId}](https://docs.smartlinks.app/docs/api/userappdata/userappdata-getconfig): Get user's config blob for an app. - [POST /public/auth/app/{appId}](https://docs.smartlinks.app/docs/api/userappdata/userappdata-setconfig): Get user's config blob for an app. - [DELETE /public/auth/app/{appId}](https://docs.smartlinks.app/docs/api/userappdata/userappdata-deleteconfig): Set user's config blob for an app. - [GET /public/auth/app/{appId}/data](https://docs.smartlinks.app/docs/api/userappdata/userappdata-list): Delete user's config blob for an app. - [POST /public/auth/app/{appId}/data](https://docs.smartlinks.app/docs/api/userappdata/userappdata-set): Get a specific user data item by ID. - [GET /public/auth/app/{appId}/data/{itemId}](https://docs.smartlinks.app/docs/api/userappdata/userappdata-get): List all user's data items for an app. - [DELETE /public/auth/app/{appId}/data/{itemId}](https://docs.smartlinks.app/docs/api/userappdata/userappdata-remove): Create or update a user data item. - [POST /public/auth/login](https://docs.smartlinks.app/docs/api/auth/auth-login): Login with email and password. - [POST /public/auth/register](https://docs.smartlinks.app/docs/api/auth/auth-registeruser): Requests an admin JWT for the current user and a specific collection Returns JWT if valid. - [POST /public/auth/requestJWT](https://docs.smartlinks.app/docs/api/auth/auth-requestpublicjwt): Requests an admin JWT for the current user and a specific collection Returns JWT if valid. - [POST /public/auth/verify](https://docs.smartlinks.app/docs/api/auth/auth-verifytoken): Login with email and password. - [GET /public/collection/{collectionId}/product/{collectionId}/batch/{batchId}](https://docs.smartlinks.app/docs/api/batch/batch-getpublic): Get a single batch by ID for a collection and product (public endpoint). - [GET /public/collection/{collectionId}/product/{collectionId}/variant/{variantId}](https://docs.smartlinks.app/docs/api/variant/variant-getpublic): Get a single variant by ID for a collection and product (public endpoint). - [GET /public/collection/getShortId/{shortId}](https://docs.smartlinks.app/docs/api/collection/collection-getshortid): Retrieves all Collections. - [POST /public/collection/{collectionId}/ai/chat](https://docs.smartlinks.app/docs/api/publicapi/publicapi-chat): Generate text-to-speech audio / export async function generate( collectionId: string, request: TTSRequest ): Promise { cons - [GET /public/collection/{collectionId}/ai/session/{sessionId}](https://docs.smartlinks.app/docs/api/publicapi/publicapi-getsession): Chat with product assistant (RAG) / export async function chat( collectionId: string, request: PublicChatRequest ): Prom - [POST /public/collection/{collectionId}/ai/token](https://docs.smartlinks.app/docs/api/publicapi/publicapi-gettoken): Clear session history / export async function clearSession(collectionId: string, sessionId: string): Promise<{ success: - [GET /public/collection/{collectionId}/app/config](https://docs.smartlinks.app/docs/api/collection/collection-getappsconfig): Retrieve a specific settings group for a collection (public endpoint). - [GET /public/collection/{collectionId}/asset](https://docs.smartlinks.app/docs/api/asset/asset-listforcollection): asset.listForCollection - [GET /public/collection/{collectionId}/asset/{assetId}](https://docs.smartlinks.app/docs/api/asset/asset-getforcollection): asset.getForCollection - [POST /public/collection/{collectionId}/comm/email/register](https://docs.smartlinks.app/docs/api/comms/comms-registeremail): Public: List registered contact methods. - [GET /public/collection/{collectionId}/comm/methods{qs}](https://docs.smartlinks.app/docs/api/comms/comms-listmethods): Public: Check subscription status for a subject. - [POST /public/collection/{collectionId}/comm/push/register](https://docs.smartlinks.app/docs/api/comms/comms-registerpush): Communications namespace for sending notifications and managing user communications / export namespace comms { /** Public: Get VAPID public key used for Web Push subscriptions. - [GET /public/collection/{collectionId}/comm/push/vapidPublicKey](https://docs.smartlinks.app/docs/api/comms/comms-getpushvapidpublickey): Communications namespace for sending notifications and managing user communications / export namespace comms { /** Public: Get VAPID public key used for Web Push subscriptions. - [POST /public/collection/{collectionId}/comm/sms/register](https://docs.smartlinks.app/docs/api/comms/comms-registersms): Public: Register email method for a contact. - [POST /public/collection/{collectionId}/comm/subscribe](https://docs.smartlinks.app/docs/api/comms/comms-subscribe): Public: Upsert preferences for a specific subject (or default if subject omitted). - [GET /public/collection/{collectionId}/comm/subscription/check{qs}](https://docs.smartlinks.app/docs/api/comms/comms-checksubscription): Public: Subscribe/unsubscribe contact to a subject. - [POST /public/collection/{collectionId}/comm/subscriptions/resolve](https://docs.smartlinks.app/docs/api/comms/comms-resolvesubscriptions): Public: Register SMS method for a contact. - [GET /public/collection/{collectionId}/comm/topics](https://docs.smartlinks.app/docs/api/comms/comms-getpublictopics): Admin: Patch comms settings for a collection. - [GET /public/collection/{collectionId}/comm/unsubscribe{qs}](https://docs.smartlinks.app/docs/api/comms/comms-unsubscribe): Public: Fetch configured topics for a collection. - [POST /public/collection/{collectionId}/contact](https://docs.smartlinks.app/docs/api/contact/contact-publicupsert): contact.publicUpsert - [GET /public/collection/{collectionId}/contact/me](https://docs.smartlinks.app/docs/api/contact/contact-publicgetmine): contact.publicGetMine - [PATCH /public/collection/{collectionId}/contact/me](https://docs.smartlinks.app/docs/api/contact/contact-publicupdatemine): contact.publicUpdateMine - [GET /public/collection/{collectionId}/contact/schema](https://docs.smartlinks.app/docs/api/contact/contact-publicgetschema): contact.publicGetSchema - [POST /public/collection/{collectionId}/interactions/by-user](https://docs.smartlinks.app/docs/api/interactions/interactions-publicmyinteractions): interactions.publicMyInteractions - [POST /public/collection/{collectionId}/interactions/counts-by-outcome](https://docs.smartlinks.app/docs/api/interactions/interactions-publiccountsbyoutcome): interactions.publicCountsByOutcome - [GET /public/collection/{collectionId}/interactions/{id}](https://docs.smartlinks.app/docs/api/interactions/interactions-publicget): interactions.publicGet - [GET /public/collection/{collectionId}/interactions/{qs}](https://docs.smartlinks.app/docs/api/interactions/interactions-publiclist): interactions.publicList - [GET /public/collection/{collectionId}/location/{locationId}](https://docs.smartlinks.app/docs/api/location/location-getpublicforcollection): Admin: Search locations to pick during setup (combines collection + global) GET /admin/collection/:collectionId/location - [GET /public/collection/{collectionId}/product/{productId}/asset](https://docs.smartlinks.app/docs/api/asset/asset-listforproduct): asset.listForProduct - [GET /public/collection/{collectionId}/product/{productId}/asset/{assetId}](https://docs.smartlinks.app/docs/api/asset/asset-getforproduct): asset.getForProduct - [PUT /public/collection/{collectionId}/product/{productId}/proof/claim](https://docs.smartlinks.app/docs/api/proof/proof-claimproduct): Claim a product without providing a proof ID. - [GET /public/collection/{collectionId}/product/{productId}/proof/{proofId}/asset/{assetId}](https://docs.smartlinks.app/docs/api/asset/asset-getforproof): asset.getForProof - [GET /public/collection/{collectionId}/product/{productId}/proof/{proofId}/attestation](https://docs.smartlinks.app/docs/api/attestation/attestation-list): List all attestations for a proof. - [POST /public/collection/{collectionId}/product/{productId}/proof/{proofId}/attestation](https://docs.smartlinks.app/docs/api/attestation/attestation-create): List all attestations for a proof. - [GET /public/collection/{collectionId}/product/{productId}/proof/{proofId}/attestation/{attestationId}](https://docs.smartlinks.app/docs/api/attestation/attestation-get): List all attestations for a proof. - [PUT /public/collection/{collectionId}/product/{productId}/proof/{proofId}/attestation/{attestationId}](https://docs.smartlinks.app/docs/api/attestation/attestation-update): Get a single attestation by ID. - [DELETE /public/collection/{collectionId}/product/{productId}/proof/{proofId}/attestation/{attestationId}](https://docs.smartlinks.app/docs/api/attestation/attestation-remove): Update an attestation. - [PUT /public/collection/{collectionId}/product/{productId}/proof/{proofId}/claim](https://docs.smartlinks.app/docs/api/proof/proof-claim): Update a proof for a product (admin only). - [GET /public/collection/{collectionId}/proof{qp}](https://docs.smartlinks.app/docs/api/proof/proof-list): Retrieves a single Proof by Collection ID, Product ID, and Proof ID. - [GET /public/collection/{collectionId}/template/getAllowed](https://docs.smartlinks.app/docs/api/template/template-getallowed): template.getAllowed - [GET /public/collection/{collectionId}/template/{templateId}](https://docs.smartlinks.app/docs/api/template/template-getpublic): template.getPublic - [GET /public/location/{locationId}](https://docs.smartlinks.app/docs/api/location/location-getpublic): Admin: Create a collection-scoped location POST /admin/collection/:collectionId/location / export async function create( - [POST /public/nfc/claimTag](https://docs.smartlinks.app/docs/api/nfc/nfc-claimtag): Claim an NFC tag (public). - [GET /public/nfc/findByTag/{tagId}](https://docs.smartlinks.app/docs/api/nfc/nfc-lookuptag): Claim an NFC tag (public). - [POST /public/nfc/validate](https://docs.smartlinks.app/docs/api/nfc/nfc-validate): Claim an NFC tag (public). - [GET /public/qr/lookupShortCode/{shortId}/{code}](https://docs.smartlinks.app/docs/api/qr/qr-lookupshortcode): QR namespace for public short code lookups. - [GET /public/tags/lookup](https://docs.smartlinks.app/docs/api/tags/tags-lookuptagsquery): Public batch lookup of multiple tags using query parameters (GET). - [POST /public/tags/lookup](https://docs.smartlinks.app/docs/api/tags/tags-lookuptags): Public batch lookup of multiple tags in a single request (POST). - [GET /public/tags/{tagId}](https://docs.smartlinks.app/docs/api/tags/tags-gettag): Public lookup of a single tag by tagId (global). - [GET /public/template/getAllowed/{collectionId}](https://docs.smartlinks.app/docs/api/template/template-getallowedglobal): template.getAllowedGlobal - [GET /public/template/{templateId}](https://docs.smartlinks.app/docs/api/template/template-getglobal): template.getGlobal - [GET /{base}](https://docs.smartlinks.app/docs/api/appconfiguration/appconfiguration-getconfig): Get app configuration for a collection/product scope. - [POST /{base}](https://docs.smartlinks.app/docs/api/appconfiguration/appconfiguration-setconfig): Set app configuration for a collection/product scope. - [DELETE /{base}](https://docs.smartlinks.app/docs/api/appconfiguration/appconfiguration-deleteconfig): Delete app configuration for a collection/product scope. - [GET /{zone}/collection/{collectionId}/app/{appId}/records](https://docs.smartlinks.app/docs/api/cases/cases-list): Build the base path for cases endpoints / function basePath(collectionId: string, appId: string, admin: boolean = false) - [POST /{zone}/collection/{collectionId}/app/{appId}/records](https://docs.smartlinks.app/docs/api/cases/cases-create): Build the base path for cases endpoints / function basePath(collectionId: string, appId: string, admin: boolean = false) - [POST /{zone}/collection/{collectionId}/app/{appId}/recordse)}/summary](https://docs.smartlinks.app/docs/api/cases/cases-summary): Soft delete a case DELETE /cases/:caseId / export async function remove( collectionId: string, appId: string, caseId: st - [POST /{zone}/collection/{collectionId}/app/{appId}/recordse)}/{caseId}/history](https://docs.smartlinks.app/docs/api/cases/cases-appendhistory): Get aggregate statistics for cases POST /cases/aggregate / export async function aggregate( collectionId: string, appId: - [GET /{zone}/collection/{collectionId}/app/{appId}/recordse)}/{caseId}/related](https://docs.smartlinks.app/docs/api/cases/cases-related): Get case summary (admin only) POST /cases/summary / export async function summary( collectionId: string, appId: string, - [POST /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/aggregate](https://docs.smartlinks.app/docs/api/cases/cases-aggregate): Update a case PATCH /cases/:caseId Admin can update any field, public (owner) can only update data and owner zones / exp - [GET /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{caseId}](https://docs.smartlinks.app/docs/api/cases/cases-get): Create a new case POST /cases / export async function create( collectionId: string, appId: string, input: CreateCaseInpu - [PATCH /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{caseId}](https://docs.smartlinks.app/docs/api/cases/cases-update): List cases with optional query parameters GET /cases / export async function list( collectionId: string, appId: string, - [GET /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{recordId}](https://docs.smartlinks.app/docs/api/records/records-get): Create a new record POST /records / export async function create( collectionId: string, appId: string, input: CreateReco - [PATCH /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{recordId}](https://docs.smartlinks.app/docs/api/records/records-update): List records with optional query parameters GET /records / export async function list( collectionId: string, appId: stri - [GET /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{threadId}](https://docs.smartlinks.app/docs/api/threads/threads-get): Create a new thread POST /threads / export async function create( collectionId: string, appId: string, input: CreateThre - [PATCH /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{threadId}](https://docs.smartlinks.app/docs/api/threads/threads-update): List threads with optional query parameters GET /threads / export async function list( collectionId: string, appId: stri - [POST /{zone}/collection/{collectionId}/app/{appId}/recordsn)}/{threadId}/reply](https://docs.smartlinks.app/docs/api/threads/threads-reply): Soft delete a thread DELETE /threads/:threadId / export async function remove( collectionId: string, appId: string, thre