Sites Deployments
Category: Admin
Base URL: /admin/sites
Authentication: Required
Routes: 15 routes documented
Overview#
This section documents 15 API routes for sites deployments.
⚠️ These endpoints operate on your live store.
POST/PUT/DELETEoperations here — including sync, push, resync, and cache operations — modify or delete production data, and some trigger downstream effects such as warehouse orders or customer emails.DELETEoperations are generally irreversible. Verify IDs and parameters carefully before calling them from scripts.
Quick Reference#
| Method | Endpoint | Description |
|---|---|---|
| GET | /admin/sites |
No description |
| POST | /admin/sites |
No description |
| GET | /admin/sites/:id |
No description |
| POST | /admin/sites/:id |
No description |
| DELETE | /admin/sites/:id |
No description |
| GET | /admin/sites/:id/domains |
No description |
| POST | /admin/sites/:id/domains |
No description |
| GET | /admin/sites/:id/env |
No description |
| POST | /admin/sites/:id/env |
No description |
| POST | /admin/sites/:id/env/sync |
No description |
| GET | /admin/sites/:id/integrations |
GET /admin/sites/:id/integrations Fetch all API credentials ... |
| POST | /admin/sites/:id/integrations |
POST /admin/sites/:id/integrations Link API credentials to a... |
| DELETE | /admin/sites/:id/integrations |
DELETE /admin/sites/:id/integrations Unlink API credentials ... |
| GET | /admin/sites/:id/products |
No description |
| POST | /admin/sites/:id/redeploy |
No description |
| POST | /admin/sites/:id/repo/commit |
No description |
| GET | /admin/sites/:id/repo/file |
No description |
| GET | /admin/sites/:id/repo/tree |
No description |
| GET | /admin/sites/:id/sales-channels |
No description |
| POST | /admin/sites/:id/sales-channels |
No description |
| GET | /admin/sites/:id/store-config |
GET /admin/sites/:id/store-config Fetch comprehensive store ... |
| POST | /admin/sites/:id/vercel/link |
No description |
| POST | /admin/sites/provision |
No description |
GET Admin Sites#
Endpoint: GET /admin/sites
Authentication: Admin (Required)
Response#
Success:
{
sites,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites#
Endpoint: POST /admin/sites
Authentication: Admin (Required)
Request Body#
| Field | Type | Required |
|---|---|---|
name |
string | Yes |
slug |
string | Yes |
salesChannelIds |
array | No |
type |
enum(storefront, funnel, customer_portal, partner_portal) | No |
framework |
enum(NEXTJS, ASTRO, REMIX, NUXT, SVELTEKIT) | No |
repo_provider |
enum(GITHUB, GITLAB, BITBUCKET) | No |
repo_owner |
string | No |
repo_name |
string | No |
status |
enum(PROVISIONING, ACTIVE, FAILED, ARCHIVED) | No |
template_owner |
string | No |
template_repo |
string | No |
brand_id |
string | No |
Response#
Success:
{
site,
}Error (409):
{
message,
}Error (400):
{
message,
}Error (500):
{
message,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id#
Endpoint: GET /admin/sites/:id
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
site,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id#
Endpoint: POST /admin/sites/:id
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
sales_channel_ids |
array | No |
brand_id |
string | No |
selected_persona_ids |
array | No |
name |
string | No |
status |
enum(provisioning, active, failed, archived) | No |
Response#
Success:
{
site,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'DELETE Admin Sites :id#
Endpoint: DELETE /admin/sites/:id
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
The handler does not return an object literal, so the response shape is not derivable from the source.
Example Request#
curl -X DELETE 'https://your-store.omnicart.cc/admin/sites/:id' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Domains#
Endpoint: GET /admin/sites/:id/domains
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
domains,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/domains' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Domains#
Endpoint: POST /admin/sites/:id/domains
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
domain |
string | Yes |
vercel_link |
boolean | No |
add_www |
boolean | No |
proxied_after_verify |
boolean | No |
Response#
The handler does not return an object literal, so the response shape is not derivable from the source.
Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/domains' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Env#
Endpoint: GET /admin/sites/:id/env
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
env_vars,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/env' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Env#
Endpoint: POST /admin/sites/:id/env
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
name |
string | Yes |
value |
string | Yes |
target |
string | No |
is_secret |
boolean | No |
Response#
Success:
{
env,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/env' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Env Sync#
Endpoint: POST /admin/sites/:id/env/sync
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
This route does not declare a validation schema, so the accepted fields are not derivable from the source. Check the handler before relying on a particular body.
Response#
Success:
{
siteId,
status,
count,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/env/sync' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Integrations#
Endpoint: GET /admin/sites/:id/integrations
Authentication: Admin (Required)
Description#
GET /admin/sites/:id/integrations Fetch all API credentials linked to this site
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
siteId,
linkedIntegrations,
availableIntegrations,
count,
}Error (500):
{
error,
details,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/integrations' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Integrations#
Endpoint: POST /admin/sites/:id/integrations
Authentication: Admin (Required)
Description#
POST /admin/sites/:id/integrations Link API credentials to a site and auto-add env vars
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
credentialIds |
array | Yes |
Response#
Success:
{
siteId,
linkedCount,
addedEnvVars,
success,
}Error (400):
{
error,
details,
}Error (500):
{
error,
details,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/integrations' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'DELETE Admin Sites :id Integrations#
Endpoint: DELETE /admin/sites/:id/integrations
Authentication: Admin (Required)
Description#
DELETE /admin/sites/:id/integrations Unlink API credentials from a site and remove env vars
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
siteId,
unlinkedCount,
removedEnvVars,
success,
}Error (400):
{
error,
details,
}Error (500):
{
error,
details,
}Example Request#
curl -X DELETE 'https://your-store.omnicart.cc/admin/sites/:id/integrations' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Products#
Endpoint: GET /admin/sites/:id/products
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
siteId,
products,
count,
}Also returns:
{
siteId,
products,
count,
}Also returns:
{
siteId,
products,
count,
}Error (500):
{
error,
details,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/products' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Redeploy#
Endpoint: POST /admin/sites/:id/redeploy
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
This route does not declare a validation schema, so the accepted fields are not derivable from the source. Check the handler before relying on a particular body.
Response#
Success:
{
status,
siteId,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/redeploy' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Repo Commit#
Endpoint: POST /admin/sites/:id/repo/commit
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
path |
string | Yes |
content |
string | Yes |
message |
string | Yes |
branch |
string | No |
sha |
string | No |
Response#
Success:
{
success,
commit,
content,
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/repo/commit' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Repo File#
Endpoint: GET /admin/sites/:id/repo/file
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
path,
sha,
encoding,
content,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/repo/file' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Repo Tree#
Endpoint: GET /admin/sites/:id/repo/tree
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
branch,
path,
items,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/repo/tree' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Sales-channels#
Endpoint: GET /admin/sites/:id/sales-channels
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
siteId,
salesChannels,
count,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/sales-channels' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Sales-channels#
Endpoint: POST /admin/sites/:id/sales-channels
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
salesChannelIds |
array | Yes |
Response#
Success:
{
siteId,
...result
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/sales-channels' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'GET Admin Sites :id Store-config#
Endpoint: GET /admin/sites/:id/store-config
Authentication: Admin (Required)
Description#
GET /admin/sites/:id/store-config Fetch comprehensive store configuration for a site including: - Store metadata (name, currencies, default settings) - Regions with payment providers and countries - Sales channels - Shipping options - Tax settings
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Response#
Success:
{
siteId,
store,
regions,
salesChannels,
paymentProviders,
siteLinkedChannels,
}Also returns:
{
siteId,
store,
regions,
salesChannels,
paymentProviders,
siteLinkedChannels,
}Also returns:
{
siteId,
store,
regions,
salesChannels,
paymentProviders,
siteLinkedChannels,
}Error (500):
{
error,
details,
}Example Request#
curl -X GET 'https://your-store.omnicart.cc/admin/sites/:id/store-config' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites :id Vercel Link#
Endpoint: POST /admin/sites/:id/vercel/link
Authentication: Admin (Required)
URL Parameters#
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | Id identifier |
Request Body#
| Field | Type | Required |
|---|---|---|
project_id |
string | No |
project_name |
string | No |
team_id |
string | No |
Response#
The handler does not return an object literal, so the response shape is not derivable from the source.
Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/:id/vercel/link' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'POST Admin Sites Provision#
Endpoint: POST /admin/sites/provision
Authentication: Admin (Required)
Request Body#
| Field | Type | Required |
|---|---|---|
name |
string | Yes |
slug |
string | Yes |
salesChannelIds |
array | No |
type |
enum(storefront, funnel, customer_portal, partner_portal) | No |
template_owner |
string | No |
template_repo |
string | No |
repo_owner |
string | No |
repo_name |
string | No |
team_id |
string | No |
Response#
Success:
{
status,
...r
}Example Request#
curl -X POST 'https://your-store.omnicart.cc/admin/sites/provision' \
-H 'Authorization: Bearer YOUR_TOKEN' \
-H 'Content-Type: application/json'