API reference/Sites
Put a taken-down site back up
Try itReverses take_down_site: the site is live again and billed from the next run. Autopay is not restarted. A Workflow Corp suspension can't be lifted here.
POST
/api/v1/sites/{site_id}/put-back-upAuthentication
An API key as Authorization: Bearer or x-api-key. It needs the sites:publish scope — publish sites (put the draft live).
sites:publishChanges the live siteIdempotency-Key requiredMCP tool: put_site_back_up
Parameters
Named placeholders go in the path; the rest in a JSON body.
site_idstringPath · required- The site's id.1 to 100 characters
Response
200 with JSON on success (schema on the right). Errors use the standard envelope; a retry with the same Idempotency-Key gets the first answer back (how retries work).
curl -X POST 'https://websites.workflowcorp.com/api/v1/sites/SITE_ID/put-back-up' \
-H "Authorization: Bearer $WEBSITEBUDDY_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'{
"site_id": "SITE_ID"
}{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"draft",
"live",
"suspended",
"archived"
]
},
"taken_down": {
"type": "boolean",
"description": "You took the site down (status suspended): not served, not billed from the next run, data kept. put_site_back_up reverses it."
},
"address": {
"type": "string",
"description": "The free address, e.g. https://rosies-diner.websites.workflowcorp.com/"
},
"custom_domain": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "The verified primary custom domain, if any."
},
"client_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"template_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"package": {
"anyOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"page_limit": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"name",
"page_limit"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"published_version": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
},
"published_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"unpublished_changes": {
"type": "boolean",
"description": "The draft has edits that are not live yet."
},
"editor_url": {
"type": "string"
},
"prices": {
"anyOf": [
{
"type": "object",
"properties": {
"wholesale_setup_cents": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"wholesale_monthly_cents": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"retail_setup_cents": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"retail_monthly_cents": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
}
},
"required": [
"wholesale_setup_cents",
"wholesale_monthly_cents",
"retail_setup_cents",
"retail_monthly_cents"
],
"additionalProperties": false
},
{
"type": "null"
}
],
"description": "Only when the key's creator may see prices (billing.view); null otherwise."
},
"is_sample": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"message": {
"type": "string",
"description": "What changed, in plain words."
}
},
"required": [
"id",
"name",
"slug",
"status",
"taken_down",
"address",
"custom_domain",
"client_id",
"template_id",
"package",
"published_version",
"published_at",
"unpublished_changes",
"editor_url",
"prices",
"is_sample",
"created_at",
"message"
],
"additionalProperties": false
}