Create presentations, documents, social posts, and web pages programmatically via the Gamma API.
Homepage: https://gamma.app API Docs: https://developers.gamma.app/docs/getting-started Runtime dependencies: curl, python3 (for JSON building/parsing)
Set the environment variable before using:
bash
export GAMMA_API_KEY="sk-gamma-xxxxx" # Get from https://gamma.app/settings
The script only makes network calls to https://public-api.gamma.app/v1.0. Your API key and inputText content are sent to Gamma's servers.
bash
bash scripts/gamma.sh generate "AI trends in 2026 for business leaders" \
--format presentation --num-cards 10 --export pdf --wait
bash
bash scripts/gamma.sh generate "Quarterly marketing report Q1 2026" \
--format document --text-mode generate --amount detailed \
--tone "professional" --audience "executive team" --export pdf --wait
bash
bash scripts/gamma.sh template "g_abcdef123" "Update this pitch deck for Twist Broadband client" \
--export pdf --wait
bash
bash scripts/gamma.sh status "generationId123"
bash
bash scripts/gamma.sh themes
bash scripts/gamma.sh themes "dark"
bash scripts/gamma.sh folders
scripts/gamma.sh <command> [args] [options]
CommandArgsDescriptiongenerate``"inputText"Create from scratchtemplate``"gammaId" "prompt"Create from existing templatestatus``"generationId"Check generation statusthemes``[query]List available themesfolders``[query]List workspace folders
OptionValuesDefault--formatpresentation, document, social, webpagepresentation--text-modegenerate, condense, preservegenerate--num-cards1-60 (Pro) / 1-75 (Ultra)10--card-splitauto, inputTextBreaksauto--themetheme ID from themes command(Gamma picks)--exportpdf, pptx(none)--tonefree text(none)--audiencefree text(none)--languageISO code (en, es, fr...)(auto)--amountbrief, medium, detailed, extensive(auto)--image-sourceaiGenerated, pexels, noImages, etc.(auto)--image-modelflux-1-pro, imagen-4-pro, etc.(auto)--image-stylefree text ("photorealistic")(none)--instructionsadditional guidance (max 2000 chars)(none)--dimensionsfluid, 16x9, 4x3, 1x1, 4x5, 9x16, a4, letterfluid--workspace-accessnoAccess, view, comment, edit, fullAccess(default)--external-accessnoAccess, view, comment, edit(default)--folderfolder ID (comma-separated for multiple)(none)--wait(flag) Poll until generation completesfalse--poll-intervalseconds between polls5
generationId--wait or manually check status until completedgammaUrl (live link) and export download URL if requestedcredits.deducted and credits.remaining\n---\n in inputText to force card breaks (set --card-split inputTextBreaks)--image-source noImagesFor complete parameter details, header/footer configuration, and sharing options, read references/api-reference.md.