Public Generation
Generate a complete project (plan + generate in one call)
Authorization
apiKey In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://www.encelade.ai/api/public/v1/projects/generate" \ -H "Content-Type: application/json" \ -d '{ "outlineHints": [ "string" ], "verbosity": "concise", "model": "gpt-5.4", "pageCount": "auto", "includeCallToAction": true, "deepResearch": false, "useConnectors": false }'{
"sessionId": "string",
"status": "planning"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string",
"code": "CREDITS_EXHAUSTED",
"limit": {
"key": "string",
"value": 0,
"used": 0
},
"upgrade_url": "http://example.com"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string"
}Generate a project outline
Authorization
apiKey In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://www.encelade.ai/api/public/v1/projects/plan" \ -H "Content-Type: application/json" \ -d '{ "outlineHints": [ "string" ], "verbosity": "concise", "model": "gpt-5.4", "pageCount": "auto", "includeCallToAction": true, "deepResearch": false, "useConnectors": false }'{
"plan": {
"title": "string",
"tone": "string",
"audience": "string",
"summary": "string",
"callToAction": "string",
"pages": [
{
"title": "string",
"objective": "string",
"keyPoints": [
"string"
],
"slideType": "narrative",
"mediaRole": "none",
"narrativeBeat": "setup",
"headlineStyle": "insight",
"recommendedRoadmapStyles": [
"OPTION1"
],
"recommendedStatisticsStyles": [
"CENTERED"
],
"recommendedStepsStyles": [
"CHEVRONS"
],
"supportingPacketIds": [
"string"
],
"userContent": "string",
"dataSourceHint": {
"connectionId": "string",
"provider": "google_sheets",
"resourceId": "string",
"resourceName": "string",
"metric": "string",
"fields": [
"string"
],
"targetLayerType": "chart"
}
}
]
},
"questions": [
{
"id": "string",
"question": "string",
"reason": "string",
"inputType": "text",
"choices": [
"string"
],
"placeholder": "string"
}
],
"sessionId": "string",
"events": [
{
"type": "string",
"message": "string",
"data": null
}
],
"usage": {
"property1": 0,
"property2": 0
}
}{
"sessionId": "string",
"events": [
{
"type": "string",
"message": "string",
"data": null
}
]
}{
"error": "string"
}{
"error": "string"
}{
"error": "string",
"code": "CREDITS_EXHAUSTED",
"limit": {
"key": "string",
"value": 0,
"used": 0
},
"upgrade_url": "http://example.com"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string"
}Generate project content from a supplied plan
Authorization
apiKey In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://www.encelade.ai/api/public/v1/projects/generate-from-plan" \ -H "Content-Type: application/json" \ -d '{ "plan": { "title": "string", "tone": "string", "audience": "string", "summary": "string", "pages": [ { "title": "string", "objective": "string", "keyPoints": [ "string" ], "slideType": "narrative", "mediaRole": "none" } ] } }'{
"project": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"pid": "string",
"tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
"name": "string",
"theme": "default",
"brandingId": null,
"pageLayersScrollable": true,
"pageAspectRatio": "16:9",
"pageGridEnabled": false,
"pageGridType": "12-column",
"pageNumbersEnabled": false,
"linkShareToken": "string",
"linkAccess": "tenant",
"linkRole": "owner",
"publishSlug": null,
"isPublished": false,
"publishedAt": null,
"ogImageUrl": null,
"publishDescription": null,
"lockedThemeMode": null,
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"pinnedAt": null,
"pages": [
{
"presentModeAnimation": "layers-staggered",
"currentSelectedLayerId": null,
"currentSelectedLayerType": null,
"speakerNotes": "",
"watermarkEnabled": false,
"watermarkText": "",
"watermarkShowOnAllPages": false,
"layout": [],
"isPageLayoutLocked": false,
"hide": false,
"layerVisibilityDefaults": null,
"showLayoutBounds": true,
"fluidLayout": null,
"narrativeBeat": null,
"pageTypeId": "string",
"pageTypeVariantId": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"slug": "string",
"position": 0,
"pageBackground": []
}
],
"members": [
{
"id": "string",
"userId": "string",
"name": "string",
"email": "string",
"avatar": "string",
"role": {
"id": "owner",
"name": "string"
}
}
]
},
"sessionId": "string",
"events": [
{
"type": "string",
"message": "string",
"data": null
}
],
"metrics": {
"durationMs": 9007199254740991,
"toolInvocationCount": 9007199254740991,
"eventCount": 9007199254740991
}
}{
"sessionId": "string",
"events": [
{
"type": "string",
"message": "string",
"data": null
}
]
}{
"error": "string"
}{
"error": "string"
}{
"error": "string",
"code": "CREDITS_EXHAUSTED",
"limit": {
"key": "string",
"value": 0,
"used": 0
},
"upgrade_url": "http://example.com"
}{
"error": "string"
}{
"error": "string"
}{
"error": "string"
}