Kam mají doputovat klientovy soubory

Aktualizováno:

Nejlepší výsledek dokončeného sběru podkladů není odkaz, který si musíte pamatovat otevřít — je to projektová složka, ve které už všechno je, a Slack zpráva, která vám to už oznámila. BriefGate tohle směrování nedělá sám: neexistuje nativní export do Google Drive ani Dropboxu, ani tlačítko, které by soubory samo zařadilo do složky. Místo toho dává vše, co Zapier zap, n8n workflow nebo vlastní skript potřebuje, aby to směrování udělaly za vás — typované výsledky s podepsanými odkazy na soubory, ZIP celého sběru podkladů a webhooky, které se spustí ve chvíli, kdy něco dorazí. Tohle je cílová polovina client intake; sběrnou stranu — co požádat a jak se to upomíná — pokrývá Nejlepší způsoby žádosti o soubory od klientů.

Dvě cesty, jak soubory dostat ven

Každý soubor, který klient nahraje, je dostupný dvěma způsoby, a volba závisí na tom, jestli chcete jednotlivé soubory, nebo celý balík.

Typované výsledky, po položkách. `GET /v1/intakes/:id/results` (MCP nástroj get_intake_results, a akce, kterou pod kapotou volají jak Zapier, tak n8n) vrací jeden záznam na položku, klíčovaný jejím key. Položka typu file se vrátí jako { url, filename, mime, size, checksum_sha256 }; file_list se vrátí jako pole se stejným tvarem, jeden záznam na nahraný soubor; image navíc přidává width/height. url je v každém případě podepsaný odkaz platný 24 hodin — stáhněte ho nebo ho předejte dalšímu kroku bez zbytečného odkladu, a pokud 24 hodin uplyne dřív, než se k tomu dostanete, zavolejte get_intake_results znovu pro čerstvý odkaz. Stejné 24hodinové okno platí i pro endpoint na jeden soubor, `GET /v1/intakes/:id/items/:key/files/:fileId`, který přesměruje rovnou na podepsaný odkaz místo toho, aby ho vrátil jako JSON. Přesný tvar, jaký vrací každý typ položky, popisuje typy položek.

Vše jako jeden ZIP. `GET /v1/intakes/:id/download` sbalí každý nahraný soubor do jednoho archivu, každý ve své vlastní podsložce podle položky, spolu s přehledem podklady.pdf/podklady.md za celý sběr podkladů — štítky, stavy, rozhodnutí, prominutí. Je to správná volba, když bude složku otevírat ručně člověk, ne workflow nástroj zpracovávající soubory jednotlivě, nebo když chcete mít přehledový dokument hned vedle souborů. Limit je 2 GB (413 download_too_large); nad tuto hranici sáhněte po typovaných výsledcích a stáhněte podepsaný odkaz každého souboru zvlášť. Pokud chcete znát počet bajtů předem, zkontrolujte nejdřív `GET /v1/intakes/:id/download/preflight`.

V obou případech jde o čtecí přístup k tomu, co už BriefGate má — zařazení do Drive, Dropboxu, bucketu nebo repa je krok, který po stažení udělá váš automatizační nástroj, ne BriefGate za vás.

Zapierová cesta do projektové složky v Drive

Zapierová integrace BriefGate má přesně ty součásti, které tohle potřebuje: trigger Intake Completed se spustí, jakmile jsou v všechny povinné položky, a jeho payload už nese project_name — pro pojmenování cílové složky se nemusí nic dohledávat. Postup:

  1. BriefGate: Intake Completed — trigger.
  2. BriefGate: Get Intake Results — search akce, která načte typované hodnoty a podepsané odkazy pro každou schválenou položku.
  3. Google Drive: Create Folder (nebo find-or-create, aby opakované spuštění zapu pro stejný sběr podkladů složku neduplikovalo) — pojmenovaná podle project_name, např. Bella Napoli — Website.
  4. Google Drive: Upload File — jeden krok na položku typu soubor, ukazující na url dané položky z kroku 2, nahraný do složky z kroku 3.

U položky file_list s více soubory projděte pole smyčkou (Sub-Zap, nebo Formatter krok, který ho rozdělí na line items) místo jednoho kroku Upload File na položku — pět souborových polí zvládne pět kroků v pohodě, neznámě velká fotogalerie ne. Přesně tenhle vzorec používá i vlastní příklad integrace Completed intake → files in Drive.

n8n cesta do úložiště

n8n node BriefGate pokrývá identický tvar pro self-hosted workflow: node BriefGate Trigger naslouchá na intake.completed (dokud je workflow aktivní, registruje webhook na vašem účtu) a jeho payload nese project_name stejně jako u Zapieru. Vlastní pracovní příklad n8n je:

BriefGate Trigger (intake.completed) → BriefGate: Get Results → node HTTP Request na každý soubor, stahující jednotlivé podepsané odkazy → úložný node (Google Drive, nebo vestavěný Dropbox node n8n pro cíl v Dropboxu), který soubor nahraje do složky pojmenované podle klienta nebo projektu.

Krok HTTP Request je důležitý: podepsaný odkaz je přímý odkaz ke stažení, ne něco, na co by mohl node Drive nebo Dropbox ukázat jako na vzdálený zdroj — bajty si stáhnete sami a binární data předáte dál, stejně jako u jakéhokoli jiného externě hostovaného souboru. Tři šablony k přímému importu, postavené na tomto a dvou dalších vzorcích, jsou odkazované z n8n zdrojů.

Slack zpráva, která řekne, co dorazilo

BriefGate umí psát do Slacku přímo, bez workflow nástroje mezi tím: zaregistrujte webhook s "format": "slack" a BriefGate pošle do kanálu jednu větu za každou událost, kterou odebíráte — viz Webhooks: Slack and Discord. Při odběru item.submitted je to jedna věta na soubor v okamžiku, kdy dorazí (The client submitted "logo" for Bella Napoli — Website.); při odběru intake.completed jedna věta, když je hotovo celé. To je rychlá cesta na „dej vědět týmu" a nepotřebuje žádnou automatizační platformu.

Aby zpráva řekla i to, co ještě chybí, je potřeba jít o krok dál, než umí vestavěný formát — poskládejte si ji sami v Zapieru nebo n8n: spusťte se na item.submitted nebo podle rozvrhu, zavolejte get_intake_status (nebo přečtěte pole missing, které vrací get_intake_results) pro aktuální průběh sběru podkladů, a pošlete „3 z 5 položek pro Bella Napoli — Website je uvnitř. Ještě chybí: hero copy, otevírací doba." BriefGate dodá webhookem surovou událost; váš workflow nástroj dodá shrnutí — přesně tahle kombinace stojí za příklady „heads-up in Slack" v Zapieru i n8n.

Pojmenování a členění do složek, které přežije víc než tři projekty

Schéma jedna složka na klienta, které funguje na prvních třech projektech, obvykle přestane fungovat kolem desátého — jakmile si dva klienti dělí jméno, nebo se projekt v půlce přejmenuje. Co ho udrží funkční:

Secrets jsou z automatizace záměrně vynechané

Žádná z výše popsaných cest by nikdy neměla nést položku typu secret — a ve výchozím stavu ani nemůže. Search akce Zapieru Get Intake Results vždy posílá exclude_secrets=true: položky typu secret se z odpovědi úplně vynechají, aniž by se odhalily, protože Zapier drží výstup každého kroku v historii zapu a secret lze odhalit jen jednou, navždy, napříč celým účtem (viz Trezor na přístupy). Stejná logika platí pro jakýkoli n8n workflow nebo vlastní skript — zavolejte get_intake_results s exclude_secrets: true, nebo API klíči jednoduše nedávejte scope secrets:read, a heslo typu wp_admin se náhodou neprosměruje do souboru v Drive, složky v Dropboxu ani Slack kanálu.

Přístup si přečtěte raději v dashboardu, kde je kliknutí vlastníka na Zobrazit samo tím jednorázovým odhalením a hodnota se nikdy nedotkne webhook payloadu, historie zapu ani logu běhu n8n. Pokud secret potřebuje k někomu z týmu, je to záměrný druhý krok přes váš vlastní správce hesel — ne něco, co by mělo být automatické.

Související