List site pages
curl --request GET \
--url https://app.promptingco.com/api/v1/site/pages \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://app.promptingco.com/api/v1/site/pages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.promptingco.com/api/v1/site/pages"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"ok": true,
"data": {
"scope": {
"product": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
},
"organization": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
}
},
"page": 123,
"pageSize": 123,
"query": "<string>",
"status": "<string>",
"type": "<string>",
"isManual": true,
"pathPrefix": "<string>",
"hasContent": true,
"domainId": "<string>",
"domain": "<string>",
"archivedStatus": "active",
"orderBy": "createdAt",
"orderByDirection": "asc",
"total": 1,
"totalPages": 1,
"items": [
{
"id": "<string>",
"promptId": "<string>",
"title": "<string>",
"filePath": "<string>",
"sourceUrl": "<string>",
"status": "<string>",
"type": "<string>",
"isManual": true,
"metaTitle": "<string>",
"metaDescription": "<string>",
"metadata": {
"contentType": "recommended"
},
"redirectToUrl": "<string>",
"redirectAudience": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"domains": [
{
"id": "<string>",
"domain": "<string>",
"isCanonical": true,
"pathPrefix": "<string>"
}
]
}
]
}
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}Content
List site pages
Deprecated, will be removed in future versions. Please use GET /api/v1/content instead.
GET
/
api
/
v1
/
site
/
pages
List site pages
curl --request GET \
--url https://app.promptingco.com/api/v1/site/pages \
--header 'x-api-key: <api-key>'const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://app.promptingco.com/api/v1/site/pages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.promptingco.com/api/v1/site/pages"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"ok": true,
"data": {
"scope": {
"product": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
},
"organization": {
"id": "<string>",
"name": "<string>",
"slug": "<string>"
}
},
"page": 123,
"pageSize": 123,
"query": "<string>",
"status": "<string>",
"type": "<string>",
"isManual": true,
"pathPrefix": "<string>",
"hasContent": true,
"domainId": "<string>",
"domain": "<string>",
"archivedStatus": "active",
"orderBy": "createdAt",
"orderByDirection": "asc",
"total": 1,
"totalPages": 1,
"items": [
{
"id": "<string>",
"promptId": "<string>",
"title": "<string>",
"filePath": "<string>",
"sourceUrl": "<string>",
"status": "<string>",
"type": "<string>",
"isManual": true,
"metaTitle": "<string>",
"metaDescription": "<string>",
"metadata": {
"contentType": "recommended"
},
"redirectToUrl": "<string>",
"redirectAudience": "<string>",
"publishedAt": "2023-11-07T05:31:56Z",
"deletedAt": "2023-11-07T05:31:56Z",
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"domains": [
{
"id": "<string>",
"domain": "<string>",
"isCanonical": true,
"pathPrefix": "<string>"
}
]
}
]
}
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}{
"ok": false,
"code": "<string>",
"message": "<string>",
"details": "<unknown>"
}Authorizations
apiKeyAuthbearerAuthcookieAuth
Organization-scoped API key. Available scopes:
- content:read: Read site pages, markdown content, and llms.txt files
- content:write: Create, update, and delete site pages and content
- prompts:read: Read prompts, topics, prompt suggestions, and prompt analysis results
- prompts:write: Create, update, archive prompts and generate, edit, or review prompt suggestions
- simulations:read: Read agent-simulation tasks, runs, environments, and analytics
- simulations:write: Create and trigger simulation runs
- logs:read: Read AI-traffic logs and request-level audit events
- analytics:read: Read analytics aggregates (rankings, mentions, sources, SOV)
- analytics:write: Write events to analytics
- products:read: Read product metadata and competitor data
- products:write: Update product settings and competitor lists
Query Parameters
Product ID. Provide exactly one of productId or productSlug (the server enforces this at runtime).
Minimum string length:
1Product slug. Provide exactly one of productId or productSlug (the server enforces this at runtime).
Minimum string length:
1Available options:
createdAt, updatedAt, deletedAt Available options:
asc, desc Available options:
draft, published Available options:
active, archived, all