Felo API PlatformFelo API Platform

Výzkum

Prozkoumejte cílový účet před prvním kontaktem

Přečtěte web firmy, nedávné pokrytí a co veřejně publikují, a napište brief účtu s nedávnými kroky, pravděpodobnými prioritami, tématy rozhovoru a poctivě neznámým.

Čas20 minutÚroveňZákladníAktualizováno2026-10-30
Pro kohoZakladatelé a operátořiAccount executiveObchodní lídři

Zkopírovat prompt

Nahraďte pole v hranatých závorkách a vložte do Claude Code, Codex nebo AI s přístupem k terminálu. Nainstaluje skill Felo, zeptá se před utracením kreditů a spustí workflow.

Připrav briefing o účtu [název firmy nebo doména] před [kontaktem / discovery hovorem / obnovením].

Naše nabídka: [produkt nebo služba]. Kupující, na kterém nám záleží: [role]. Období posledních pohybů: [posledních 90 dní / posledních 12 měsíců].

Přečti si jejich web, veřejné pokrytí a veřejné příspěvky. Vytvoř Markdown briefing s:
1. Tím, co dělají, v jednom odstavci, se zdroji.
2. Posledními pohyby: launch, financování, nábor, vedení, partnerství — s daty a odkazy.
3. Pravděpodobnými prioritami tohoto kvartálu, jasně označenými jako odvození.
4. Tématy pro začátek rozhovoru: tři konkrétní pozorování, každé se zdrojem.
5. Neznámými: co se nepodařilo ověřit z veřejných zdrojů.
6. Úplným seznamem zdrojů.

Pravidla:
- Nikdy si nevymýšlej jméno kontaktu, e-mail, telefon, počet zaměstnanců, tržby ani výši financování.
- Jen veřejné zdroje: žádná soukromá data, stránky jen pro přihlášené ani scrapované adresáře.
- Nezapisuj do CRM ani jiného systému. Briefing je soubor, který kontroluje člověk.
- Každý závěr označ jako závěr; fakta drž s odkazy a daty.
- Neuváděj záměr kupujícího jako fakt.
- Než utratíš kredity, ukaž plánovaná volání API a počkej na mé schválení.
- Nic neposílej, neplánuj, nezveřejňuj a nikomu nepiš.
- Výsledek zapiš do ./account-brief.md a shrň ho v chatu.

Kopie obsahuje i instalační kroky a bezpečnostní pravidla.

Co dostanete

Ukázkový výstup jednoho běhu. Ne živé generování.

Ukázkový briefing účtu (výňatek)

Briefing účtu — [firma], zkontrolováno 2026-10-30

Co dělají

Staví skladové pickovací roboty pro středně velké logistické operátory. Zdroj: https://example.com/about (zkontrolováno 2026-10-30).

Nedávné pohyby

  • Otevřel druhou montážní lokalitu — https://example.com/news/expansion (2026-10-24)
  • Nabírá tým „deployment operations” — https://example.com/careers (zkontrolováno 2026-10-30)
  • Post jejich účtu o partnerské integraci — @example_company (2026-10-21)

Pravděpodobné priority (závěr)

Rychlejší nasazení na více lokalitách. Závěr z postu o expanzi a nové deployment role — není to oznámený plán ani veřejně potvrzené.

Témata pro začátek rozhovoru

  • Druhá lokalita je nová: zeptat se, jak se playbook nasazení mění, když se lokality liší. Zdroj: https://example.com/news/expansion
  • Vyhrazená role deployment operations naznačuje předání mezi prodejem a instalací. Zdroj: https://example.com/careers

Neznámé

  • Kdo dnes vede deployment operations: data z veřejných zdrojů nejsou.
  • Velikost flotily a hodnoty kontraktů: data nejsou.

Zdroje

  • https://example.com/about
  • https://example.com/news/expansion
  • https://example.com/careers

Přesná volání

Pro vývojáře: stejný workflow jako kód, v pořadí provádění.

Zobrazit skutečná API volání
  1. Získejte přehled firmy

    Zeptejte se Chat, co firma dělá a jaké jsou nedávné veřejné změny, a držte citované zdroje.

    account.ts
    const BASE = "https://openapi.felo.ai";
    const headers = {
      Authorization: `Bearer ${process.env.FELO_API_KEY}`,
      "Content-Type": "application/json",
    };
    
    async function felo<T>(path: string, body?: unknown): Promise<T> {
      const res = await fetch(`${BASE}${path}`, {
        method: body ? "POST" : "GET",
        headers,
        body: body ? JSON.stringify(body) : undefined,
      });
      if (!res.ok) throw new Error(`${res.status}: ${await res.text()}`);
      return res.json() as Promise<T>;
    }
    
    type ChatData = {
      data: {
        answer: string;
        resources: { link: string; title: string; snippet: string }[];
      };
    };
    
    const company = "Example Robotics";
    const domain = "example.com";
    const buyerRole = "Head of Operations";
    
    const overview = await felo<ChatData>("/v2/chat", {
      query: `What does ${company} do, who buys from it, and what changed in the last 90 days?`,
    });
    
    const seedSources = overview.data.resources.slice(0, 5);

    Ukázkový výstup

    {
      "answer": "The company builds …",
      "sources": [
        { "link": "https://example.com/about", "title": "…", "snippet": "…" }
      ]
    }
  2. Přečtěte web, ceny a kariéru

    Přes Web Fetch přečtěte About, ceny a kariéru, abyste pochopili produkt, zákazníky a otevřené role.

    account.ts
    type ExtractData = { data: { content: string } };
    
    const companyPages = [
      { url: `https://${domain}/about`, title: "About" },
      { url: `https://${domain}/pricing`, title: "Pricing" },
      { url: `https://${domain}/careers`, title: "Careers" },
    ];
    
    const pages = await Promise.all(
      companyPages.map(async (page) => {
        const res = await felo<ExtractData>("/v2/web/extract", {
          url: page.url,
          output_format: "markdown",
          with_readability: true,
          with_cache: true,
        });
        const checkedAt = new Date().toISOString().slice(0, 10);
        return { ...page, checkedAt, content: res.data.content };
      }),
    );

    Ukázkový výstup

    {
      "url": "https://example.com/careers",
      "checkedAt": "2026-10-30",
      "content": "# Careers\n\nOpen roles: deployment operations…"
    }
  3. Podívejte se na veřejné signály za 90 dní

    Hledejte na X název firmy a produktu, držte veřejné posty, účty a data za posledních 90 dní.

    account.ts
    type XData = {
      data: {
        tweets: {
          content: string;
          author: { username: string };
          created_at: string;
          metrics: { retweet_count: number; favorite_count: number };
        }[];
      };
    };
    
    const since = Math.floor((Date.now() - 90 * 24 * 60 * 60 * 1000) / 1000);
    
    const posts = await felo<XData>("/v2/x/tweet/search", {
      query: `"${company}" (hiring OR launch OR partnership OR expansion)`,
      limit: 20,
      since_time: since,
    });
    
    const recent = posts.data.tweets.slice(0, 5);

    Ukázkový výstup

    { "data": { "tweets": [
      {
        "content": "We just opened our second assembly site",
        "author": { "username": "example_company" },
        "created_at": "2026-10-21T14:02:00Z",
        "metrics": { "retweet_count": 4, "favorite_count": 31 }
      }
    ] } }
  4. Napište brief účtu

    Popište přehled, nedávné kroky, pravděpodobné priority, témata rozhovoru, neznámé a zdroje.

    account.ts
    const today = new Date().toISOString().slice(0, 10);
    
    const accountBrief = [
      `# Account brief — ${company}`,
      `Checked ${today}. Buyer role: ${buyerRole}.`,
      "",
      "## What they do",
      overview.data.answer,
      "",
      "## Recent moves",
      ...recent.map(
        (post) => `- ${post.created_at.slice(0, 10)}: ${post.content} (from @${post.author.username})`,
      ),
      ...pages.map((page) => `- ${page.title} page captured ${page.checkedAt}: ${page.url}`),
      "",
      "## Likely priorities (inference)",
      "<!-- One or two sentences from the moves above. Mark them as inference, never a stated plan. Delete this comment when filled. -->",
      "",
      "## Conversation starters",
      ...recent.slice(0, 3).map(
        (post) => `- Ask about: ${post.content.slice(0, 100)} (dated ${post.created_at.slice(0, 10)})`,
      ),
      "",
      "## Unknowns",
      "- Who owns the workflow we sell into: Not available from public sources.",
      "- Contract values and team size: Not available.",
      "",
      "## Sources",
      ...pages.map((page) => `- ${page.title}: ${page.url}`),
      ...seedSources.map((source) => `- ${source.title}: ${source.link}`),
    ].join("\n");
    
    console.log(accountBrief);

    Ukázkový výstup

    # Account brief — Example Robotics
  5. Uložte do LiveDoc

    Uložte brief a zdroje do LiveDoc pro opětovné použití při dalším kontaktu.

    account.ts
    type LiveDocData = { data: { short_id: string } };
    
    const accountDoc = await felo<LiveDocData>("/v2/livedocs", {
      name: `Account: ${company}`,
      description: `Briefs and sources checked ${today}`,
    });
    
    await felo(`/v2/livedocs/${accountDoc.data.short_id}/resources/urls`, {
      urls: [
        ...pages.map((page) => ({ url: page.url, title: page.title })),
        ...seedSources.map((source) => ({ url: source.link, title: source.title })),
      ],
    });
    
    await felo(`/v2/livedocs/${accountDoc.data.short_id}/resources/doc`, {
      title: `Account brief ${today}`,
      content: accountBrief,
    });
    
    console.log(accountDoc.data.short_id); // the next call reuses this LiveDoc

    Ukázkový výstup

    { "short_id": "PvyKouzJirXjFdst4uKRK3" }

Co obsahuje

  • Přehled firmy se zdroji z Chat
  • Web, ceny a kariéra jako Markdown
  • Datované veřejné posty na X
  • Strukturovaný brief účtu
  • LiveDoc s důkazy

Co nedělá

  • Nedává e-maily, telefony ani osobní data
  • Nečte privátní data ani stránky jen po přihlášení
  • Nezapisuje do CRM a neposílá zprávy
  • Počet zaměstnanců, tržby a financování jen s jasným zdrojem
  • Priority a záměry označené jako inference

Otázky

Dává kontaktní e-maily?

Ne. Workflow dělá jen veřejný výzkum a nedává e-mail, telefon ani osobní data.

Odkud data?

Chat vrací přehled se zdroji, Web Fetch čte web, ceny a kariéru, X Search přidává veřejné posty. Každá položka drží odkaz a datum.

Lze zkoumat firmy mimo technologie?

Ano. Kde je málo veřejných informací, brief označí neznámé místo vymýšlení.

Zapisuje do CRM?

Ne. Tvoří jen Markdown brief; integrace CRM je na vás.

Jsou priority fakta?

Ne. Brief označuje „pravděpodobné priority“ jako inferenci a ukazuje základ; konečné rozhodnutí je na prodejci.

Kolik stojí jeden běh?

Chat, extrakce a X Search se účtují podle užití; aktuální sazby na stránce cen a prompt žádá schválení před útratou.

Související workflowy

Přizpůsobte

Stejný recept, upravený podle toho, jak skutečně dodáváte.

Jen jeden segment

Omezte na odvětví nebo region pro konkrétnější brief.

Přidejte poslední launch

Přidejte stránku launchu jako další zdroj aktuálních témat.

Spolu s analýzou konkurence

Porovnejte priority z briefu s positioningem z analýzy a najděte úhel.

Referenční stránky za tímto receptem a další kroky.