Integraties

E-mail versturen vanuit Gemini CLI

Google Gemini als terminal coding-agent voor WeSender-integraties.

Coding-agent TypeScript

Vereisten

  • Gemini CLI geinstalleerd (npm install -g @google/generative-ai-cli of via de Google AI Studio CLI)
  • Google-account met toegang tot Gemini API (via Google AI Studio)
  • WeSender-account met geverifieerd domein en API-sleutel

Stap 1: Installeer en configureer de Gemini CLI

Installeer de Gemini CLI via npm: npm install -g @google/gemini-cli. Of volg de installatie-instructies op de Google AI Studio-pagina. Log in met: gemini auth login. De CLI slaat de sessie op zodat je niet elke keer opnieuw hoeft in te loggen.

Stap 2: Geef de WeSender-context mee

De Gemini CLI ondersteunt het meegeven van context via bestanden of URLs. Voeg de WeSender-documentatie toe aan het begin van je sessie: gemini chat --context wesender.nl/llms.txt Of voeg in de chat handmatig de API-referentie toe: plak de inhoud van wesender.nl/llms.txt als eerste bericht.

Stap 3: Vraag Gemini om de integratie te schrijven

Typ in de Gemini CLI-sessie: Maak een Node.js TypeScript-functie die een e-mail verstuurt via de WeSender REST API (POST https://api.wesender.nl/v1/emails). Gebruik process.env.WESENDER_API_KEY als Bearer-token. Maak ook een .env.example-bestand. Gemini schrijft de functie in de chat. Kopieer de code naar je project of vraag Gemini om de bestanden direct aan te passen.

Stap 4: Sla de sleutel veilig op

Voeg WESENDER_API_KEY toe aan je .env.local. Voeg .env.local toe aan .gitignore als dat nog niet het geval is. Vraag Gemini om dit te controleren: controleer of .env.local in .gitignore staat en voeg hem toe als dat niet zo is.

Stap 5: Test de integratie

Vraag Gemini om een testscript te schrijven: Schrijf een eenvoudig Node.js-script dat de sendEmail-functie aanroept met een testadres en de output logt. Geen testframework nodig, gewoon een ts-node-script. Run met: npx ts-node test-email.ts. Controleer je inbox en het WeSender-dashboard.

Volledig voorbeeld

Hier is de volledige implementatie in src/lib/email.ts:

export async function sendEmail(opts: {
  to:      string
  subject: string
  html:    string
}): Promise<{ id: string }> {
  const res = await fetch("https://api.wesender.nl/v1/emails", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.WESENDER_API_KEY}`,
      "Content-Type":  "application/json",
    },
    body: JSON.stringify({
      from: "noreply@jouwdomein.nl",
      ...opts,
    }),
  })

  if (!res.ok) {
    throw new Error(`WeSender-fout: ${res.statusText}`)
  }

  return res.json() as Promise<{ id: string }>
}

Veelgestelde vragen

De Gemini CLI past bestanden niet direct aan. Hoe ga ik daarmee om?

De Gemini CLI is primair een chatinterface. Kopieer de gegenereerde code handmatig naar je project, of gebruik Gemini in een IDE-plugin (VS Code heeft een Google Gemini-extensie) die wel directe bestandsaanpassingen ondersteunt.

Gemini schrijft Python-code terwijl ik TypeScript wil. Hoe los ik dat op?

Geef de taal expliciet mee in je prompt: schrijf alleen TypeScript-code. Gebruik de @wesender/node SDK in plaats van fetch. Gemini volgt de instructie en schrijft TypeScript.

Is de Gemini CLI gratis?

Voor persoonlijk gebruik via Google AI Studio is de Gemini CLI gratis met een aanvraaginlimiet. Voor zakelijk gebruik of hogere volumes heb je een betaald Google Cloud-project nodig. De WeSender-integratie werkt in beide gevallen hetzelfde.

Volgende stappen