How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Zoca Website API

The Website API from Zoca — 128 operation(s) for website.

Zoca Website API is one of 193 APIs that Zoca publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Website. The published artifact set on APIs.io includes an OpenAPI specification.

This API exposes 177 operations across 128 paths, and defines 1 schema. It is described by OpenAPI 3.2.0, at version 3.20.10.

Requests are made against a single base URL, https://api.zoca.ai.

177 operations 128 paths 1 schemas 23 DELETE75 GET25 PATCH50 POST4 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
3.20.10
Base URL
https://api.zoca.ai
Authentication
HTTP Bearer
Resource Areas
1

Authentication & Security 1

Zoca Website API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (JWT) (access-token).

  • access-token — Enter JWT token in the format Bearer

Paths & Operations 177

Across 128 paths, the API surfaces 177 operations — 23 DELETE, 75 GET, 25 PATCH, 50 POST, 4 PUT. Each is listed below with its method, path, parameters, and response codes.

Website 177
POST
/website/{websiteId}/gallery/migrate
Migrate website gallery media from chronemapping to website.media
t_value 1 param → 200400500
POST
/website/forms
Create a new form
t_value → 201
GET
/website/forms
Get all forms (paginated)
t_value 2 params → 200
GET
/website/forms/{id}
Get form by ID
t_value → 200
PATCH
/website/forms/{id}
Update a form
t_value → 200
DELETE
/website/forms/{id}
Delete a form (soft delete)
t_value → 200
GET
/website/{websiteId}/generate-metadata
Generate metadata for a website
t_value 1 param → 200400404
POST
/website/generate-fonts
Generate AI font pair suggestions
t_value → 200400
GET
/website/{websiteId}/website-forms
Get all formIds mapped to a websiteId
t_value → 200
POST
/website/{websiteId}/website-forms
Create website-form mapping
t_value → 201
PATCH
/website/{websiteId}/website-forms/{id}
Update website-form mapping by ID
t_value → 200
DELETE
/website/{websiteId}/website-forms/{id}
Delete a website-form mapping
t_value → 200
GET
/website/global-pages
Get paginated list of global pages
t_value 3 params → 200
GET
/website/sections/{sectionId}/colors
Get all colors for a section
t_value → 200
PATCH
/website/sections/{sectionId}/colors
Update color for a section
t_value 1 param body → 200
POST
/website/{websiteId}/products
Create a new product for a website
t_value body → 201
GET
/website/{websiteId}/products
Get all products for a website
t_value → 200
GET
/website/{websiteId}/products/{productId}
Get a product by ID for a website
t_value 2 params → 200
PATCH
/website/{websiteId}/products/{productId}
Update a product for a website
t_value 2 params → 200
DELETE
/website/{websiteId}/products/{productId}
Delete a product for a website
t_value 2 params → 200
PATCH
/website/{websiteId}/products/reorder
Reorder products for a website
t_value 1 param body → 200400404
POST
/website/navigation-links
Create a navigation link
t_value → 201
GET
/website/navigation-links
Get navigation links by parent ID
t_value 2 params → 200
PATCH
/website/navigation-links/{id}
Update a navigation link
t_value 1 param → 200
DELETE
/website/navigation-links/{id}
Delete a navigation link
t_value 1 param → 200
PATCH
/website/navigation-links/reorder/{parentId}
Reorder navigation links
t_value → 200
POST
/website/navigation-links/reset/{parentId}
Reset a page's navigation links to the generated list
t_value 1 param → 201
POST
/website/website-font
Create website font configuration
t_value → 201
GET
/website/website-font/{websiteId}
Get website font configuration
t_value → 200
PATCH
/website/website-font/{websiteId}/{fontType}
Update website font configuration
t_value → 200
DELETE
/website/website-font/{websiteId}/{fontId}/{fontType}
Delete website font configuration
t_value → 200
POST
/website/{websiteId}/add/font
Add a font to a website by name and URL
t_value 1 param → 201
POST
/website/font
Create a new font
t_value → 201
GET
/website/font
Get paginated list of fonts with optional filtering
t_value 2 params → 200
PATCH
/website/font/{id}
Update a font by ID
t_value → 200
DELETE
/website/font/{id}
Delete a font by ID
t_value → 200
GET
/website/font/{id}/websites
Get all websites associated with a specific font
t_value 1 param → 200404
POST
/website/create-website-v2
Create website V2 from location payload
t_value → 201
POST
/website/create-website-v3
Create website V3 with booking link
t_value → 201
POST
/website/scrape-theme
Queue a website-theme scrape (colors + fonts) from referencewebsiteurl
t_value → 201
POST
/website/scrape-theme-preview
Queue a URL-only theme scrape (colors + fonts); no DB writes — poll for the result
t_value → 201
GET
/website/scrape-theme-preview/{jobId}
Poll a URL-only theme-preview job for its scraped colors + fonts
t_value → 200
POST
/website/scrape-data
Scrape business data from booking link
t_value → 201
POST
/website/collect-website-data
Mode B Phase 1: Collect raw website data for frontend review (no DB writes)
t_value → 201
POST
/website/create-from-confirmed-data
Mode B Phase 2: Create website from user-confirmed data
t_value → 201
POST
/website/sync-services-from-booking
Sync services from a booking platform into the database
t_value → 200400404
GET
/website/booking-link-data
Get business details from booking link
t_value → 200
POST
/website/get-new-website-id
Get or create new website ID for location
t_value → 201
POST
/website/add-booking-link
Add booking link and trigger website creation
t_value → 201
GET
/website/onboarding-creation-status
Get onboarding website-creation status
t_value 2 params → 200
GET
/website/generate-website
Generate website for a location
t_value → 200
GET
/website/generate-subdomains
Generate subdomain suggestions
t_value → 200
GET
/website/platforms
Get available booking platforms
t_value → 200
GET
/website/get-website-id/{locationEntityId}
Get website ID by location entity ID
t_value → 200
GET
/website/{websiteId}
Get website data by ID
t_value → 200
GET
/website/{websiteId}/v2
Get website data V2 with sections
t_value → 200
GET
/website/{websiteId}/v2/pages/{pageId}/sections
Hydrate a single page's sections (metadata-mode companion)
t_value → 200
POST
/website/{websiteId}/check-website-live-on-gbp
Check if website is live on GBP
t_value → 201
POST
/website/{websiteId}/editor/publish
Batch publish editor changes for website sections
t_value → 201
POST
/website/{websiteId}/ctas
Create a call-to-action for website
t_value → 201
GET
/website/{websiteId}/ctas
Get CTAs filtered by parent entity
t_value 3 params → 200400
GET
/website/{websiteId}/ctas/{ctaId}
Get a CTA by ID
t_value → 200
PUT
/website/{websiteId}/ctas/{ctaId}
Update a CTA by ID
t_value → 200
DELETE
/website/{websiteId}/ctas/{ctaId}
Delete a CTA by ID
t_value → 200
GET
/website/{websiteId}/working-hours
Get website working hours
t_value → 200
POST
/website/{websiteId}/working-hours
Update website working hours
t_value → 201
GET
/website/{websiteId}/reviews
Get website reviews
t_value → 200
GET
/website/{parentId}/{parentType}/attributes
Get website attributes
t_value 4 params → 200400
PATCH
/website/{parentId}/{parentType}/attributes/{attributeId}
Update website attribute
t_value 3 params body → 200400404
DELETE
/website/{parentId}/{parentType}/attributes/{attributeId}
Delete website attribute
t_value 3 params → 200400404
GET
/website/{websiteId}/themes
Get all themes for a website
t_value → 200
POST
/website/{websiteId}/themes
Create a theme for website
t_value → 201
GET
/website/{websiteId}/themes/v2
Get website themes V2
t_value → 200
GET
/website/{websiteId}/themes/{themeId}
Delete a theme for a website
t_value 2 params → 200
PATCH
/website/{websiteId}/themes/{themeId}
Update a website theme
t_value → 200
DELETE
/website/{websiteId}/themes/{themeId}
Delete a website theme
t_value → 200
DELETE
/website/themes/{themeId}
Delete a global theme by ID
t_value 1 param → 200
GET
/website/themes/{themeId}
Get theme by ID
t_value → 200
GET
/website/{websiteId}/pages
Get website pages mapping
t_value 1 param → 200
POST
/website/{websiteId}/pages
Create a website page
t_value body → 200
GET
/website/{websiteId}/website-pages
List websitepages rows for a website (per-row name/path/metadata)
t_value 1 param → 200
GET
/website/{websiteId}/pages/{pageId}
Get website page by page ID
t_value 2 params → 200404
PATCH
/website/{websiteId}/pages/{pageId}
Update a website page
t_value body → 200
DELETE
/website/{websiteId}/pages/{id}
Delete a website page
t_value 2 params → 200
GET
/website/{websiteId}/pages/{pageId}/attributes
Get page attributes
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/attributes
Create a page attribute
t_value → 201
PATCH
/website/{websiteId}/pages/{pageId}/attributes/{attributeId}
Update a page attribute
t_value → 200
DELETE
/website/{websiteId}/pages/{pageId}/attributes/{attributeId}
Delete a page attribute
t_value → 200
GET
/website/{templateId}/template-sections
Get template sections
t_value → 200
GET
/website/{websiteId}/pages/{pageId}/sections
Get page sections
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/sections
Create a page section
t_value → 201
PATCH
/website/{websiteId}/pages/{pageId}/sections/reorder
Reorder page sections
t_value → 200
PATCH
/website/{websiteId}/pages/{pageId}/sections/{sectionId}
Update a page section
t_value → 200
DELETE
/website/{websiteId}/pages/{pageId}/sections/{sectionId}
Delete a page section
t_value → 200
GET
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/attributes
Get section attributes
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/attributes
Create a section attribute
t_value → 201
DELETE
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/attributes/{attributeId}
Delete a section attribute
t_value → 200
GET
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents
Get section contents
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents
Create section content
t_value → 201
GET
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}
Get section content by ID
t_value → 200
PATCH
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}
Update section content
t_value → 200
DELETE
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}
Delete section content
t_value → 200
GET
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/attributes
Get content attributes
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/attributes
Create content attribute
t_value → 201
PATCH
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/attributes/{attributeId}
Update content attribute
t_value → 200
DELETE
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/attributes/{attributeId}
Delete content attribute
t_value → 200
GET
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/media
Get content media
t_value → 200
POST
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/media
Create content media
t_value → 201
PATCH
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/media/{mediaId}
Update content media
t_value → 200
DELETE
/website/{websiteId}/pages/{pageId}/sections/{sectionId}/contents/{contentId}/media/{mediaId}
Delete content media
t_value → 200
POST
/website/themes
Upload themes
t_value → 201
POST
/website/themes/v2
Upload themes V2 without template-theme link
t_value → 201
GET
/website/themes/list
Get paginated list of themes with optional filtering
t_value 2 params → 200
GET
/website/templates
Get templates, optionally filtered by website ID
t_value → 200
GET
/website/section-media
Get section media data
t_value → 200
GET
/website/category-media
Get category media data
t_value → 200
GET
/website/single-section-media
Get single section media
t_value → 200
POST
/website/replace-media-in-section
Replace media in section
t_value → 201
POST
/website/save-theme-template
Save selected theme and template
t_value → 201
POST
/website/{websiteId}/themes/generate-palette
Generate AI color palettes from a prompt
t_value → 201
GET
/website/{websiteId}/ai-colors
List a website's AI-generated color palettes
t_value → 200
DELETE
/website/{websiteId}/ai-colors/{id}
Delete an AI-generated color palette
t_value → 200
POST
/website/{websiteId}/ai-colors/{id}/persist
Persist a stored AI palette as a theme (returns themeId)
t_value → 201
POST
/website/{websiteId}/ai-colors/{id}/apply
Apply a stored AI palette to the website and publish
t_value → 201
GET
/website/{websiteId}/theme-template
Get theme and template for website
t_value → 200
POST
/website/reorder-media-in-section
Reorder media in section
t_value → 201
POST
/website/update-website-status
Update website status
t_value → 201
GET
/website/get-website-status
Get website status and preferences
t_value → 200
GET
/website/subdomain
Get website subdomain
t_value → 200
PUT
/website/subdomain
Update website subdomain (preserves current domain)
t_value → 200
GET
/website/subdomain-validate
Validate subdomain availability
t_value → 200
PUT
/website/domain
Update website domain (preserves current subdomain)
t_value → 200400404
PATCH
/website/{websiteId}/pipeline
Update website pipeline version
t_value 1 param body → 200400404
GET
/website/get-system-category
Get system category by name
t_value → 200
GET
/website/default-category-images
Get default images for a category
t_value → 200
POST
/website/add-user-preferences
Add user preferences
t_value → 201
GET
/website/get-ip-details
Get IP details from request
t_value → 200
POST
/website/create-website-from-location
Create website from location data
t_value → 201
GET
/website/{websiteId}/location
Get location for website
t_value → 200
PUT
/website/{websiteId}/location
Update website location details
t_value → 200
GET
/website/{websiteId}/location/canonical
Get canonical website location NAP and contact data
t_value → 200
GET
/website/list
Get paginated list of websites with optional filtering
t_value 23 params → 200400
GET
/website/get-websites/{websiteId}
Get website by ID
t_value → 200
PATCH
/website/{websiteId}/{sectionId}/section
Update section
t_value → 200
GET
/website/chrone-services
Get chrone services for a location
t_value → 200
GET
/website/gallery-media
Get website gallery media for a location
t_value → 200
POST
/website/set-external-domain/{externalDomain}/{subDomain}
Set external domain for website
t_value → 201
DELETE
/website/kill/{websiteName}
Delete website by name
t_value → 200
GET
/website/respawn/{websiteName}
Respawn website by name
t_value → 200
POST
/website/{websiteId}/build
Build website
t_value → 201
POST
/website/build/all
Build all published websites
t_value → 201
PATCH
/website/{websiteId}/build-status/{buildStatus}
Update website build status
t_value → 200
GET
/website/{websiteId}/page/{pageId}/metadata
Get page metadata
t_value → 200
DELETE
/website/{websiteId}/page/{pageId}/metadata
Delete page metadata
t_value → 200
PATCH
/website/{websiteId}/page/{pageId}/metadata
Update page metadata
t_value → 200
PATCH
/website/{websiteId}/schema-markup
Update schema markup
t_value → 200
DELETE
/website/{websiteId}/schema-markup
Delete schema markup
t_value → 200
GET
/website/{websiteId}/schema-markup
Get schema markup
t_value → 200
POST
/website/{websiteId}/analytics
Create website analytics tracking codes in bulk
t_value 1 param body → 201400
PATCH
/website/{websiteId}/analytics
Update website analytics tracking codes in bulk
t_value 1 param body → 200400404
DELETE
/website/{websiteId}/analytics
Delete website analytics tracking code
t_value 2 params → 200404
GET
/website/{websiteId}/analytics
Get website analytics tracking codes
t_value 1 param → 200404
GET
/website/book-now-clicks
Get book now clicks breakdown by page type
t_value → 200400404
GET
/website/website-funnel
Get website funnel data with conversion rates
t_value → 200400404
GET
/website/website-mixpanel-funnel
Get Mixpanel-only website funnel data (visitors + book-now clicks)
t_value → 200400404
GET
/website/page-views-trend
Get website page views trend over time
t_value → 200400404
GET
/website/location-details
Get lightweight location and website details
t_value → 200404
GET
/website/top-pages
Get top pages by page views for a website
t_value → 200400
GET
/website/traffic-sources
Get traffic sources breakdown for a website
t_value → 200400
POST
/website/{websiteId}/description/generate
Generate AI copy (title or description) for a website section
t_value 1 param → 200400
POST
/website/template-theme
Create a template-theme mapping
t_value → 201409
GET
/website/template-theme
List template-theme mappings with optional filters + pagination
t_value → 200
GET
/website/template-theme/{id}
Get a single template-theme mapping by id
t_value 1 param → 200404
PATCH
/website/template-theme/{id}
Update a template-theme mapping
t_value 1 param → 200404409
DELETE
/website/template-theme/{id}
Delete a template-theme mapping
t_value 1 param → 200404
GET
/website/generation-status/{generationId}
Get the status of a website generation run
t_value → 200
POST
/website/generation-status/{generationId}
Update website generation status (called by prism lambda)
t_value → 201

Schemas 1

The contract defines 1 schema that model the data the API accepts and returns. The most detailed is e (6 properties). Each schema is shown below with its type and property counts.

e
object
6 properties 3 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

zoca-website-api-openapi.yml Raw ↑

Other APIs Zoca publishes across the network.

Zoca ACM API
Zoca Acuity API
Zoca Addon Groups API
Zoca Addons API
Zoca Aeo Lead Magnet API
Zoca Agents API
Zoca API Keys API
Zoca App API
Zoca App Blocker API
Zoca App Blocker Updates API
Zoca Approvals API
Zoca Auth API
Where this information came from

This is an independent, third-party profile of Zoca Website API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.