Skip to main content
POST
/
v1
/
websites
/
{websiteId}
/
duplicate
curl -X POST https://api.bouncy.ai/v1/websites/johndoe/duplicate \
  -H "Authorization: Bearer bcy_live_pk_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "slug": "johndoe-v2"
  }'
{
  "message": "Website duplicated successfully",
  "id": "johndoe-v2",
  "url": "https://bouncy.ai/johndoe-v2",
  "sourceId": "johndoe"
}
Quick DuplicationThis endpoint copies all content, styling, links, and settings from an existing website. Perfect for creating variations, client sites, or campaign-specific pages without rebuilding from scratch.

Request

Headers

Content-Type
string
required
Must be application/json

Path Parameters

websiteId
string
required
The identifier of the source website to duplicate. Can be a slug, custom domain, or document ID.Example: johndoe

Body

slug
string
URL slug for the new website. Required if no domain is provided, or when using a system domain.Example: johndoe-v2
domain
string
Domain for the new website. The API automatically detects the domain type:
  • Bouncy domain (bouncy.ai): Uses the slug as the path — bouncy.ai/{slug}
  • System domain (e.g. bouncy.link, spicyl.ink): Requires a slug{domain}/{slug}
  • Custom domain (any other domain): Deploys to your custom domain — {domain}
Example: bouncy.link
You must provide at least a slug or a domain. If only slug is provided, the website is created on bouncy.ai/{slug}.

Response

message
string
Success message
id
string
Unique ID of the newly created website
url
string
Full URL to the new websiteExample: https://bouncy.ai/johndoe-v2
sourceId
string
ID of the source website that was duplicated
curl -X POST https://api.bouncy.ai/v1/websites/johndoe/duplicate \
  -H "Authorization: Bearer bcy_live_pk_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "slug": "johndoe-v2"
  }'
{
  "message": "Website duplicated successfully",
  "id": "johndoe-v2",
  "url": "https://bouncy.ai/johndoe-v2",
  "sourceId": "johndoe"
}