hosting

POST /v1/sites/{siteId}/wordpress/staging/publish

Publish a site's staging WordPress over the live site.

모든 hosting 엔드포인트

모든 개발자 문서

인증

Bearer 토큰으로 API 키를 전송하세요. 키는 반드시 sites.view 권한을 가지고 있어야 하며, 권한이 없는 키는 404가 아닌 403으로 거부됩니다.

이 엔드포인트는 조직 ID를 받지 않습니다. 사용자의 키가 이미 속한 조직을 식별하며, 응답은 해당 조직으로 한정됩니다.

무료 체험하기

대괄호 안에 있는 모든 내용을 사용자 지정 값으로 바꾸고, 키 플레이스홀더는 대시보드의 키로 바꾸세요.

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/wordpress/staging/publish \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

로그인하셨나요? 대시보드의 API 콘솔이 실제 조직 ID와 본인의 키를 자동으로 채우고 라이브 API를 대상으로 요청을 실행하므로 실제 응답을 확인할 수 있습니다. API 콘솔에서 이 엔드포인트를 여세요

상세 정보

The most destructive operation on the managed hosting line: the live site's files and database are replaced by the staging clone's. Its own path, so no request aimed at any other staging operation can reach it. ⛔⛤ The one optional field, mode, selects SCOPE and never DIRECTION. This path exists separately from createSiteWordPressStaging precisely so that no field can flip which way the copy runs — on managed shared hosting both directions are driven from a single value, and one passthrough endpoint would let a request reading as "refresh my staging copy" publish a stale clone over a live shop. Every value of mode copies staging onto live; it says only how much travels. A field that could change the direction must never be added here. ⛔ A scope the site's platform cannot honour is refused 422. Read publish_modes on SiteWordPressStaging first and offer only what it lists: the Zinn® autoscaling platform performs files, db and both, and managed shared hosting performs both only, because its staging operation takes no scope at all. That is a property of the platform, not of the customer's plan — a larger package does not add a database-only publish. Refused 422 when the site has no staging clone — the platform does not check, and would happily publish an empty staging environment over a live shop. The client is required to take a typed confirmation naming the site. 202 because the publish continues at the vendor after the acknowledgement. 404 for a site whose platform has no WordPress to manage. Requires sites.view and sites.panel_access.

매개변수

이름유형필수설명
siteId (path)UuidSite ID (UUIDv7).

요청 본문

이름유형필수설명
modestring<files, db, both>아니요files copies the document root and leaves the live database alone; db copies the database and search-replaces the staging URL back to the live one, leaving the live files…

응답

이름유형필수설명
permittedbooleanWhether this site may use WordPress staging at all — on the resold range the package type's own flag, and on our own fleet the plan's staging entitlement.
publish_modesstring<files, db, both>[]Which publish scopes this site's platform can actually perform, for publishSiteWordPressStaging. A client offers exactly these and no more. ⛔⛔…
publishablebooleanWhether the plan also carries publish to live, which is a separate permission from creating a staging copy. ⛔ Not folded into permitted, because the catalogue sells the two…
reinstallablebooleanWhether the plan carries reinstalling the platform software over the staging copy. A fifth question for the same reason as publishable: the catalogue sells it separately, so…
idle_removal_daysintegerAfter how many days with no change a staging copy is removed automatically, or null when nothing ever removes it. ⛔⛔…
idle_notice_daysintegerHow many days' warning the customer is emailed before that removal, or null when idle_removal_days is null.
operationsSiteWordPressStagingOperation[]The site's recent staging operations, newest first — the client's window onto work that runs after the request returns. ⛔⛔…
dataSiteWordPressStagingClone[]The staging copies that exist.

이 엔드포인트가 반환할 수 있는 오류

401 · 403 · 404 · 409 · 422 · 429 · 503