SiteMe

Partner API

Embed SiteMe inside your product. Your backend holds an API key. Your customers never see SiteMe branding, questionnaires, or checkout.

1. Create a key

Sign in, open Developers, and create a secret key. Keys start with sk_test_ or sk_live_. Keep them on your server only.

2. Buy platform credits

Usage-only. No monthly Partner plan. Compact generations cost 10 credits, standard 30, rich 50. Follow-up edits cost 2. Packs start at $19 for 100 credits.

3. Generate

JavaScript (Node):

import { SiteMe } from "@siteme/sdk";

const siteme = new SiteMe({ apiKey: process.env.SITEME_API_KEY });
const site = await siteme.sites.create({
  businessName: "Acme Dental",
  customerBrief: "Family dentistry in Austin. Bookings, insurance, two locations.",
  output: { look: "standard" },
  slug: "acme-dental",
});
const ready = await siteme.sites.wait(site.id);
console.log(ready.preview_url, ready.html);

Python:

import os
from siteme import SiteMe

siteme = SiteMe(api_key=os.environ["SITEME_API_KEY"])
site = siteme.sites.create(
    business_name="Acme Dental",
    customer_brief="Family dentistry in Austin. Bookings, insurance, two locations.",
    output={"look": "standard"},
    slug="acme-dental",
)
ready = siteme.sites.wait(site["id"])

Custom prompts

Store one industry template with prompt.upsert. Per-client facts go in customerBrief. SiteMe’s system prompt cannot be replaced — that blocks prompt injection and credit abuse.

Preview URLs on your domain

Every site returns HTML and a hosted preview_url at /wl/{token}. CNAME a hostname (for example sites.yourapp.com) to SiteMe, verify it, then assign a slug so clients get https://sites.yourapp.com/acme-dental. You can also attach a full client hostname.