Generate pitch deck via Gamma API
POST
/api/canvas/{deal_id}/ip/generate-deck
const url = 'https://example.com/api/canvas/example/ip/generate-deck';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"deck_mode":"pitch"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/canvas/example/ip/generate-deck \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "deck_mode": "pitch" }'Generates a polished marketing presentation via the Gamma HTTP API. Assembles deal data into slides, calls Gamma, polls for completion, and returns the presentation URL.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”deal_id
required
Deal Id
string
Request Body
Section titled “Request Body”Media typeapplication/json
Any of:
IPDeckModeRequest
Optional body for POST /ip/generate-deck and POST /ip/preview-deck.
object
deck_mode
Deck Mode
string
null
Responses
Section titled “Responses”Successful Response
Media typeapplication/json
IPDeckGenerateResponse
Response for full Gamma deck generation (HTTP API).
object
success
required
Success
boolean
deal_type_unknown
Deal Type Unknown
boolean
slide_count
Slide Count
integer
slides_dropped
Slides Dropped
Array<string>
sparse_data
Sparse Data
boolean
Example
{ "deal_type_unknown": false, "slide_count": 0, "slides_dropped": [], "sparse_data": false}Validation Error
Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationErrorobject
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
input
Input
ctx
Context
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}