Create PowerSource from Documents
create_powersource_docsBuild a complete creative intelligence profile from internal brand documents — creative briefs, brand guidelines, product specs, customer research, competitive analysis. Takes any mix of file_ids (from a previous upload), document_urls (public PDF/DOCX/TXT/MD links, up to 10), or documents_inline (base64-encoded files with filename), plus an optional context_url for layering live brand context (colors, fonts, current messaging) and optional idempotency_key. Returns a job_id; poll with get_powersource. Output shape is identical to create_powersource_url: identity, offer, selling points, voice, buyer profile, tensions, angles, emotional arcs, ctas, narrative.
Use this when the user says "I have a brief", "here's my brand guidelines", "use this document", drops a PDF / DOCX / strategy deck, or when the truth lives in internal materials rather than the public website. The pipeline reads text only — convert PDFs to markdown before submitting via documents_inline when possible.
Costs 100 credits.
Do NOT use for URL-only scans — use create_powersource_url. For URL + docs combined (highest fidelity, triangulates public messaging against internal strategy), use create_powersource_full.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| brand_id | No | Optional Brand to attach this scan to. Get from list_brands. When omitted, the pipeline auto-resolves a brand by the context_url domain (if provided) or creates a standalone scan with no brand link. | |
| file_ids | No | Array of file IDs from a previous upload. Up to 10 files. | |
| context_url | No | Optional website URL to layer live brand context on top of the documents (colors, fonts, current messaging). | |
| document_urls | No | Array of public URLs pointing to documents (PDF, DOCX, TXT, MD). Up to 10 URLs. | |
| idempotency_key | No | Optional unique key to make this call safely retryable. If the same key + org repeats, the original result is returned without re-charging. | |
| documents_inline | No | Inline documents as base64. Use when the user has uploaded a file into chat and no public URL exists. IMPORTANT: The synthesis pipeline reads TEXT ONLY — it ignores images, diagrams, and visual layout. For any PDF or DOCX the user drops into chat: (1) read the file using your file-reading tools, (2) extract the text content preserving section headers and structure, (3) save as a clean .md or .txt file, (4) base64-encode the text file and submit here. Do NOT base64-encode the original PDF — extract text first. This keeps payloads small (a 50-page brief extracts to ~50KB of text vs 5MB of PDF) and produces better results because the pipeline gets clean structured text instead of OCR-extracted noise from embedded images. Max 5MB per file, 10 files total across all input types. |