Skip to content
GigAI Tools

Developer API / docs

Recipes

Working job graphs to copy. Each one runs as-is with your key - every operation in them exists today.

Merge many PDFs into one

Import each part, merge in order, export. Order of the input list is the page order.

{ "tasks": {
  "p1":    { "operation": "import/url", "url": "https://example.com/cover.pdf" },
  "p2":    { "operation": "import/url", "url": "https://example.com/body.pdf" },
  "p3":    { "operation": "import/url", "url": "https://example.com/appendix.pdf" },
  "merge": { "operation": "merge-pdf", "input": ["p1", "p2", "p3"] },
  "out":   { "operation": "export/url", "input": ["merge"] }
} }

Fix a sideways scan, then extract its text

Tasks chain by naming inputs - rotate feeds pdf-to-text, both outputs export.

{ "tasks": {
  "in":  { "operation": "import/base64", "file": "<base64>", "filename": "scan.pdf" },
  "fix": { "operation": "rotate-pdf", "input": ["in"], "angle": 90 },
  "txt": { "operation": "pdf-to-text", "input": ["fix"] },
  "out": { "operation": "export/url", "input": ["fix", "txt"] }
} }

Web-ready image: resize, then fit under 200 KB

resize-image caps the pixel size, compress-image finds the best quality under target_kb - and says so honestly if the target is impossible.

{ "tasks": {
  "in":    { "operation": "import/url", "url": "https://example.com/photo.jpg" },
  "size":  { "operation": "resize-image", "input": ["in"], "width": 1600 },
  "small": { "operation": "compress-image", "input": ["size"], "target_kb": 200 },
  "out":   { "operation": "export/url", "input": ["small"] }
} }

A batch of QR codes in one job

generate-qr takes no input file, so a job can mint many at once.

{ "tasks": {
  "qr-a": { "operation": "generate-qr", "text": "https://example.com/table-1" },
  "qr-b": { "operation": "generate-qr", "text": "https://example.com/table-2" },
  "qr-c": { "operation": "generate-qr", "text": "https://example.com/table-3" },
  "out":  { "operation": "export/url", "input": ["qr-a", "qr-b", "qr-c"] }
} }

Markdown release notes to a styled HTML page

{ "tasks": {
  "md":   { "operation": "import/url", "url": "https://raw.githubusercontent.com/you/repo/main/CHANGELOG.md" },
  "html": { "operation": "markdown-to-html", "input": ["md"], "title": "Changelog" },
  "out":  { "operation": "export/url", "input": ["html"] }
} }

Want a pipeline these engines cannot do yet (video, docx, watermarks)? The catalog only grows with real engines - check what exists before designing around it.

Was this page helpful?