Unpublish Page
POST
/api/v1/dashboard/content/pages/{page_id}/unpublishOverview
Reverts a published page back to draft status. The page will no longer be visible via the public content API. The published_at timestamp is cleared.
Authentication
info
Bearer authentication required - Pass your credentials as Authorization: Bearer <client_id>:<api_key>:<api_secret>.
Headers
| Header | Type | Required | Description |
|---|---|---|---|
Authorization | string | Yes | Bearer <client_id>:<api_key>:<api_secret> |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page_id | string (UUID) | Yes | The unique identifier of the page to unpublish |
Request Body
No request body is required.
Response
Returns the full page object with status set to draft.
Example Request
- cURL
- Python
- JavaScript
curl -X POST "https://spideriq.ai/api/v1/dashboard/content/pages/e5f6a7b8-c9d0-1234-efab-567890123456/unpublish" \
-H "Authorization: Bearer $CLIENT_TOKEN"
import requests
page_id = "e5f6a7b8-c9d0-1234-efab-567890123456"
resp = requests.post(
f"https://spideriq.ai/api/v1/dashboard/content/pages/{page_id}/unpublish",
headers={"Authorization": f"Bearer {CLIENT_TOKEN}"},
)
page = resp.json()
print(f"Status: {page['status']}") # "draft"
const pageId = "e5f6a7b8-c9d0-1234-efab-567890123456";
const resp = await fetch(
`https://spideriq.ai/api/v1/dashboard/content/pages/${pageId}/unpublish`,
{
method: "POST",
headers: { "Authorization": `Bearer ${CLIENT_TOKEN}` },
}
);
const page = await resp.json();
console.log(`Status: ${page.status}`); // "draft"
Example Response
{
"id": "e5f6a7b8-c9d0-1234-efab-567890123456",
"slug": "about",
"title": "About Us",
"status": "draft",
"published_at": null,
"updated_at": "2026-04-08T13:00:00Z"
}
Status Codes
| Status Code | Meaning | Description |
|---|---|---|
| 200 | OK | Page unpublished successfully |
| 401 | Unauthorized | Invalid or missing Bearer token |
| 404 | Not Found | Page not found or belongs to another client |