TypeScript client
import { OctosparkClient } from '@octospark/sdk'
const client = new OctosparkClient({
token: process.env.OCTOSPARK_TOKEN
})
const response = await client.slideshows.listSlideshows({
teamId: process.env.OCTOSPARK_TEAM_ID ?? "teamId",
query: {},
}){
"data": [
{
"contentItemId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sourceContentItemId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"status": "<string>",
"payloadId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"revision": 123,
"creativeHash": "<string>",
"currentCreativeHash": "<string>",
"renderedCreativeHash": "<string>",
"renderFresh": true,
"activeRun": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>"
},
"latestRun": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"errorCode": "<string>",
"diagnostics": "<string>"
},
"latestRenderJob": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>"
},
"project": {
"schemaVersion": 1,
"artifactKind": "slideshow",
"runtime": {
"rendererVersion": "<string>",
"remotionVersion": "<string>",
"reactVersion": "<string>",
"platform": "linux-arm64",
"entryPoint": "<string>",
"dependencyAllowlistVersion": "<string>"
},
"sourceFiles": [
{
"path": "<string>",
"contents": "<string>",
"sha256": "<string>"
}
],
"output": {
"width": 123,
"height": 123,
"fps": 30
},
"slides": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"durationFrames": 9000,
"posterFrame": 1,
"assetBindingIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"textElements": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"text": "<string>",
"position": {
"x": 0,
"y": 0,
"width": 50000.5,
"height": 50000.5,
"rotation": 0
},
"styleId": "<string>",
"overrides": {
"fontWeight": 500,
"fontSize": 259,
"lineHeight": 2.25,
"letterSpacing": 32,
"fill": "<string>",
"strokeColor": "<string>",
"strokeWidth": 16,
"shadowColor": "<string>",
"shadowBlur": 64,
"shadowOffsetX": 0,
"shadowOffsetY": 0,
"panelColor": "<string>",
"panelOpacity": 0.5,
"padding": 128,
"borderRadius": 128,
"italic": true,
"opacity": 0.5,
"maxWidth": 2048.5
}
}
],
"backgroundBindingId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"backgroundPresentation": {
"focalPoint": {
"x": 0.5,
"y": 0.5
},
"overlay": {
"color": "<string>",
"opacity": 0.5
}
},
"embeddedText": [
{
"text": "<string>"
}
]
}
],
"styles": {},
"assetBindings": {},
"styleContext": {
"renderTokens": {},
"references": [
{
"sourceId": "<string>",
"label": "<string>",
"sha256": "<string>"
}
]
}
},
"assetRefs": [
"<unknown>"
],
"links": {
"self": "<string>",
"revisions": "<string>",
"latestRenderJob": "<string>"
},
"browserPreviewUrl": "<string>",
"previewCreativeHash": "<string>"
}
],
"total": 123,
"nextCursor": "<string>",
"prevCursor": "<string>"
}Slideshows
List slideshows
List a team’s slideshow artifacts with cursor pagination, newest first by default. Each item reports its current revision and whether the latest attached render still matches the current creative hash.
GET
/
v1
/
teams
/
{teamId}
/
content
/
slideshows
TypeScript client
import { OctosparkClient } from '@octospark/sdk'
const client = new OctosparkClient({
token: process.env.OCTOSPARK_TOKEN
})
const response = await client.slideshows.listSlideshows({
teamId: process.env.OCTOSPARK_TEAM_ID ?? "teamId",
query: {},
}){
"data": [
{
"contentItemId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"teamId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sourceContentItemId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"title": "<string>",
"status": "<string>",
"payloadId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"revision": 123,
"creativeHash": "<string>",
"currentCreativeHash": "<string>",
"renderedCreativeHash": "<string>",
"renderFresh": true,
"activeRun": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>"
},
"latestRun": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"errorCode": "<string>",
"diagnostics": "<string>"
},
"latestRenderJob": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>"
},
"project": {
"schemaVersion": 1,
"artifactKind": "slideshow",
"runtime": {
"rendererVersion": "<string>",
"remotionVersion": "<string>",
"reactVersion": "<string>",
"platform": "linux-arm64",
"entryPoint": "<string>",
"dependencyAllowlistVersion": "<string>"
},
"sourceFiles": [
{
"path": "<string>",
"contents": "<string>",
"sha256": "<string>"
}
],
"output": {
"width": 123,
"height": 123,
"fps": 30
},
"slides": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"durationFrames": 9000,
"posterFrame": 1,
"assetBindingIds": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"textElements": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"text": "<string>",
"position": {
"x": 0,
"y": 0,
"width": 50000.5,
"height": 50000.5,
"rotation": 0
},
"styleId": "<string>",
"overrides": {
"fontWeight": 500,
"fontSize": 259,
"lineHeight": 2.25,
"letterSpacing": 32,
"fill": "<string>",
"strokeColor": "<string>",
"strokeWidth": 16,
"shadowColor": "<string>",
"shadowBlur": 64,
"shadowOffsetX": 0,
"shadowOffsetY": 0,
"panelColor": "<string>",
"panelOpacity": 0.5,
"padding": 128,
"borderRadius": 128,
"italic": true,
"opacity": 0.5,
"maxWidth": 2048.5
}
}
],
"backgroundBindingId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"backgroundPresentation": {
"focalPoint": {
"x": 0.5,
"y": 0.5
},
"overlay": {
"color": "<string>",
"opacity": 0.5
}
},
"embeddedText": [
{
"text": "<string>"
}
]
}
],
"styles": {},
"assetBindings": {},
"styleContext": {
"renderTokens": {},
"references": [
{
"sourceId": "<string>",
"label": "<string>",
"sha256": "<string>"
}
]
}
},
"assetRefs": [
"<unknown>"
],
"links": {
"self": "<string>",
"revisions": "<string>",
"latestRenderJob": "<string>"
},
"browserPreviewUrl": "<string>",
"previewCreativeHash": "<string>"
}
],
"total": 123,
"nextCursor": "<string>",
"prevCursor": "<string>"
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Team (workspace) id (UUID). Discover ids via the list teams endpoint or the agent context.
Query Parameters
Opaque pagination cursor from the previous page response (nextCursor/prevCursor); omit to start at the first page.
Page size as a positive integer string; defaults to 25, capped at 100.
Examples:
"25"
"100"
Field to sort by; each endpoint accepts its own allowlist and defaults to createdAt.
Example:
"createdAt"
Sort direction: asc or desc; defaults to desc.
Available options:
asc, desc ⌘I