Endpoints
create_presentation
Create a private native presentation with immutable initial version.
Request
Authentication is required by the published contract.
curl -X POST 'https://api.ursy.cloud/v1/presentations' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer YOUR_SERVICE_TOKEN'- Scopes
- Not specified by this operation
- Execution
- At the owning service
- Risk classification
- not declared
Parameters
Idempotency-Key header · string requiredSee the accepted schema for constraints.
This operation is documented here. Use the owning service with the appropriate credentials and permissions to execute it.
Response schemas and request body
{
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": false,
"properties": {
"name": {
"type": "string",
"maxLength": 190,
"x-ursy-maxBytes": 190
},
"parent_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"content": {
"type": "object",
"additionalProperties": false,
"properties": {
"format": {
"type": "string",
"enum": [
"ursy/slides-native"
]
},
"schemaVersion": {
"type": "integer",
"enum": [
1
]
},
"theme": {
"type": "string",
"enum": [
"midnight",
"daylight",
"studio"
]
},
"slides": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"title": {
"type": "string",
"maxLength": 200,
"x-ursy-maxBytes": 200
},
"body": {
"type": "string",
"maxLength": 10000,
"x-ursy-maxBytes": 10000
},
"notes": {
"type": "string",
"maxLength": 5000,
"x-ursy-maxBytes": 5000
},
"layout": {
"type": "string",
"enum": [
"title",
"title-body",
"quote",
"blank"
]
},
"background": {
"type": "string",
"enum": [
"ink",
"ocean",
"plum",
"forest",
"sunrise",
"paper"
]
}
},
"required": [
"id",
"title",
"body",
"notes",
"layout",
"background"
]
},
"minItems": 1,
"maxItems": 100
}
},
"required": [
"format",
"schemaVersion",
"theme",
"slides"
]
}
},
"required": [
"name"
]
}
}
}
},
"responses": {
"200": {
"description": "Typed operation result; request_id correlates the request.",
"content": {
"application/json": {
"schema": {
"type": "object",
"additionalProperties": true,
"properties": {
"file": {
"type": "object",
"additionalProperties": false,
"properties": {
"schema": {
"type": "string",
"enum": [
"ursy.cloud/file/v1"
]
},
"id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"workspace_id": {
"type": "string",
"pattern": "^ws_[1-9][0-9]*$"
},
"parent_id": {
"oneOf": [
{
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 190,
"x-ursy-maxBytes": 190
},
"type": {
"type": "string",
"enum": [
"folder",
"document",
"spreadsheet",
"presentation",
"note",
"publication",
"pdf",
"uploaded_file"
]
},
"current_version_id": {
"oneOf": [
{
"type": "string",
"pattern": "^ver_[1-9][0-9]*$"
},
{
"type": "null"
}
]
},
"etag": {
"type": "string",
"pattern": "^\"[a-f0-9]{64}\"$"
},
"state": {
"type": "string",
"enum": [
"active",
"trashed"
]
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"human_url": {
"type": "string"
}
},
"required": [
"schema",
"id",
"workspace_id",
"parent_id",
"name",
"type",
"current_version_id",
"etag",
"state",
"created_at",
"updated_at",
"human_url"
]
},
"request_id": {
"type": "string"
},
"replayed": {
"type": "boolean"
}
},
"required": [
"file"
]
}
}
}
},
"default": {
"description": "Stable error envelope. 401 invalid/expired/revoked grant; 403 missing scope; 404 unavailable resource; 409 plan/idempotency conflict; 412 stale ETag; 413 size/quota; 429 rate limit.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Error"
}
}
}
}
}
}