# Clickless for coding agents > Add a Product Expert and sales tracking to any store. A Product Expert answers the store's shoppers from its own catalog, recommends its products and sends them to the store's own checkout; every sale is traced to the ad, link or chat that started it. Brands pay only on sales. Provisioning is rolling out: the endpoint answers 404 and the MCP tool isn't listed until it's switched on (for everyone at once). Ask info@getclickless.ai. Channels: the web chat and the widget are live; Instagram DMs are live. Sales tracking: Shopify orders through the Clickless app; the sale tracking code for stores not on Shopify is rolling out. ## Keys https://api.getclickless.ai takes live keys (ck_live_…) only, from the developer portal (https://getclickless.ai/developers/agents) once Clickless approves the agent for live traffic: each agent is reviewed by hand, usually within one business day. There's no hosted sandbox, and ck_test_ keys are refused. A search charges nobody; an agent earns only when a person buys. First call, to check the key works: curl -X POST https://api.getclickless.ai/v1/offers/search \ -H "Authorization: Bearer $CLICKLESS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"intent": "electrolyte drink mix under $40", "ship_to": {"country": "US"}, "limit": 3}' ## Provision a store's Product Expert POST https://api.getclickless.ai/v1/brand-agents/provision with a developer API key (Authorization: Bearer ck_live_…; keep it server-side). Body: {"store_url": "https://yourstore.com"} (optional: "brand_name", and "contact_email" only if the store's owner asked for the claim link by email). Returns: preview_url (private chat with the draft, marked Preview), claim_url (for the store's owner), product_expert.handle (for the widget), test (the final check, run in sandbox), pricing (relay it word for word) and next_steps. 201 when created, 200 for the store's existing draft. Errors: 403 not a developer key, 409 already on Clickless, 422 refused (marketplace or a category Clickless doesn't carry), 429 daily limit (20 new stores a key), 503 the day's spend limit. curl -X POST https://api.getclickless.ai/v1/brand-agents/provision \ -H "Authorization: Bearer $CLICKLESS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"store_url": "https://yourstore.com"}' Spec: https://getclickless.ai/docs/openapi.yaml (operationId provisionProductExpert). ## The claim - A provisioned Product Expert is a draft: it isn’t public, sends no messages, connects no channels and earns nothing until the store’s owner claims it. - Claiming takes proof of control of the store: the Clickless Shopify app installed on it, or signing in with an email address at the store’s own domain (not webmail). - One draft per store: provisioning the same store again returns the same draft. Drafts not claimed in 30 days are archived. - Clickless doesn’t draft marketplaces, or stores selling what it never carries (research peptides and other products with no legal pathway, THC, vapes and nicotine, weapons, adult products). Any other store is drafted, and Clickless reviews the brand once its owner claims it. Give the store's owner the claim_url. Never claim it for them, and never say AI assistants will recommend the store. ## MCP Server: https://mcp.getclickless.ai/mcp (Streamable HTTP, Authorization: Bearer with the same key). Tool: provision_product_expert({store_url, contact_email?, brand_name?}), same result as the endpoint. Call it again for the same store to check on the test. ## The chat widget Before on every page; data-handle is product_expert.handle. It opens https://getclickless.ai/a/{handle}?embed=1 in an iframe and shows its button only while the Product Expert is live. It reads nothing from the page and loads no other scripts. Options: data-label, data-position="left", data-open="true". ## The sale tracking code (for stores not on Shopify) From Brand portal > Sale tracking code after claiming (it carries the brand's own key), before : ## Guides - [Lovable](https://getclickless.ai/docs/stores/lovable): Paste one prompt into Lovable’s chat. Keep the API key in Lovable’s secrets. - [Bolt](https://getclickless.ai/docs/stores/bolt): Paste one prompt into Bolt. Keep the API key in the project’s .env, never in the page. - [Replit](https://getclickless.ai/docs/stores/replit): Ask Replit Agent with one prompt. Keep the API key in Replit’s Secrets. - [v0](https://getclickless.ai/docs/stores/v0): A Next.js app from v0: the widget goes in the root layout with next/script. - [Cursor and Claude Code (MCP)](https://getclickless.ai/docs/stores/cursor): Add the Clickless MCP server and ask for provision_product_expert. - [Shopify](https://getclickless.ai/docs/stores/shopify): Install the Clickless app on the store: it connects the catalog, tracks orders and proves you run the store. - [Any website](https://getclickless.ai/docs/stores/website): One script tag for the chat, and the sale tracking code for stores not on Shopify. ### Lovable: the prompt Add a Clickless Product Expert to this store (https://yourstore.com). 1. Call POST https://api.getclickless.ai/v1/brand-agents/provision with {"store_url": "https://yourstore.com"} and header "Authorization: Bearer" plus the CLICKLESS_API_KEY secret. Never put the key in client code. 2. Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. 3. Add this tag in index.html just before , with data-handle set to product_expert.handle from the response: The chat button appears once the Product Expert is claimed and live. ### Bolt: the prompt Add a Clickless Product Expert to this store (https://yourstore.com). 1. Call POST https://api.getclickless.ai/v1/brand-agents/provision with {"store_url": "https://yourstore.com"} and header "Authorization: Bearer" plus the CLICKLESS_API_KEY secret. Never put the key in client code. 2. Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. 3. Add this tag in index.html just before (or in the root layout for a Next.js project), with data-handle set to product_expert.handle from the response: The chat button appears once the Product Expert is claimed and live. ### Replit: the prompt Add a Clickless Product Expert to this store (https://yourstore.com). 1. Call POST https://api.getclickless.ai/v1/brand-agents/provision with {"store_url": "https://yourstore.com"} and header "Authorization: Bearer" plus the CLICKLESS_API_KEY secret. Never put the key in client code. 2. Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. 3. Add this tag on every page just before , with data-handle set to product_expert.handle from the response: The chat button appears once the Product Expert is claimed and live. ### v0: the prompt Add a Clickless Product Expert to this store (https://yourstore.com). 1. From a server action or route handler (never the browser), call POST https://api.getclickless.ai/v1/brand-agents/provision with {"store_url": "https://yourstore.com"} and "Authorization: Bearer" plus process.env.CLICKLESS_API_KEY. 2. Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. 3. In app/layout.tsx, add with data-handle set to the handle it returned (in a Next.js app, next/script in the root layout). ### Shopify: the prompt Provision a Clickless Product Expert for https://yourstore.com (POST https://api.getclickless.ai/v1/brand-agents/provision, or the provision_product_expert MCP tool). Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. Then add to layout/theme.liquid just before , with data-handle set to the handle it returned. ### Any website: the prompt Add a Clickless Product Expert to this store (https://yourstore.com). 1. Call POST https://api.getclickless.ai/v1/brand-agents/provision with {"store_url": "https://yourstore.com"} and header "Authorization: Bearer" plus the CLICKLESS_API_KEY secret. Never put the key in client code. 2. Then give me the preview_url and the claim_url. Don't try to claim it yourself: I'll claim it as the store's owner. 3. Add this tag on every page just before , with data-handle set to product_expert.handle from the response: The chat button appears once the Product Expert is claimed and live. ## Pricing No setup fee and no monthly fee. Free for the first 7 days after the Product Expert goes live (once per brand). After that, you pay only out of what it saves you: 30% of the incremental savings on each sale for founding brands (50% after the founding round), measured against the cost per purchase you agree before launch. Doesn’t beat your number? You pay $0.