Ga naar inhoud

Connectors

Verbind je app met diensten van derden zoals Slack, Resend en ElevenLabs. Inloggegevens worden versleuteld opgeslagen en acties zijn vooraf geauthenticeerd.

Met Connectors integreer je externe diensten in je app zonder dat je onbewerkte API-sleutels in je code hoeft te beheren. Je stelt een verbinding eenmalig in, koppelt die aan je project, en roept vooraf gebouwde acties aan vanuit je app via de Proyecta SDK. Inloggegevens worden versleuteld opgeslagen en komen nooit terecht in je frontend-code.

ConnectorCategorieAuthenticatietypeWat het doet
ResendCommunicatieAPI-sleutelVerstuur transactionele e-mail, verzend batch-e-mails, bekijk geverifieerde domeinen
SlackCommunicatieOAuthBerichten plaatsen, kanalen en gebruikers weergeven, reageren op berichten, threads lezen
ElevenLabsAIAPI-sleutelTekst-naar-spraak, beschikbare stemmen weergeven, geluidseffecten genereren

Er worden regelmatig nieuwe connectors toegevoegd.

  1. Je maakt een verbinding aan — geef inloggegevens op (een API-sleutel of meld je aan via OAuth)
  2. Je koppelt de verbinding aan een project — hiermee geef je het project toestemming om die inloggegevens te gebruiken
  3. Je app roept acties aan — de SDK stuurt het verzoek via Proyecta Cloud, dat de inloggegevens server-side injecteert

Je app-code raakt de onbewerkte API-sleutel of het OAuth-token nooit aan. Het connectorsysteem regelt authenticatie, snelheidsbeperking en auditlogboeken.

  1. Open je project in de builder
  2. Ga naar Settings > Connectors
  3. Klik op een connector uit de catalogus (bijv. Resend)
  4. Voer je inloggegevens in:
    • API-sleutel-connectors (Resend, ElevenLabs): plak je geheime sleutel
    • OAuth-connectors (Slack): meld je aan en verleen toegang
  5. Geef de verbinding een naam (bijv. “Production Resend”)
  6. De verbinding wordt automatisch getest en als Active gemarkeerd indien geldig

Connectoracties worden aangeroepen vanuit server-side code (Convex-acties) via de Proyecta SDK:

'use node';
import { action } from './_generated/server';
import { v } from 'convex/values';
import Proyecta from '@proyecta-ai/sdk';
const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY ?? null });
export const notifySlack = action({
args: {
message: v.string(),
},
handler: async (ctx, args) => {
const result = await proyecta.connectors.execute({
connectorId: 'slack',
actionId: 'postMessage',
input: {
channel: '#general',
text: args.message,
},
});
return result.output;
},
});

De methode execute geeft het volgende terug:

VeldBeschrijving
outputDe retourwaarde van de actie (de vorm is afhankelijk van de actie)
durationMsUitvoeringstijd in milliseconden
invocationIdID van de auditlogboekvermelding

Je hoeft connectorcode niet met de hand te schrijven. De AI builder weet welke connectors aan je project zijn gekoppeld en kan de integratie voor je genereren:

  • "Stuur een welkomstmail wanneer gebruikers zich aanmelden" — gebruikt de Resend-connector
  • "Plaats een Slack-bericht wanneer een nieuwe bestelling binnenkomt" — gebruikt de Slack-connector
  • "Speel audiovertelling af op de artikelpagina" — gebruikt de ElevenLabs-connector
ActieNeveneffectenBeschrijving
sendEmailschrijvenVerstuur één transactionele e-mail
sendBatchschrijvenVerstuur meerdere e-mails tegelijk
listDomainslezenGeef geverifieerde verzendende domeinen weer
ActieNeveneffectenBeschrijving
postMessageschrijvenPlaats een bericht in een kanaal
listChannelslezenGeef kanalen in de workspace weer
listUserslezenGeef leden van de workspace weer
reactToMessageschrijvenVoeg een emoji-reactie toe
getThreadlezenHaal reacties in een thread op
ActieNeveneffectenBeschrijving
textToSpeechschrijvenZet tekst om naar spraakgeluid
listVoiceslezenGeef beschikbare stemmen weer
generateSoundEffectschrijvenGenereer een AI-geluidseffect
StatusBetekenis
ActiveInloggegevens zijn geldig en de verbinding is klaar voor gebruik
BrokenInloggegevens zijn verlopen of ingetrokken — werk ze bij om de verbinding te herstellen
  • Inloggegevens worden versleuteld opgeslagen met AES-256-GCM
  • Acties zijn snelheidsbeperkt tot 1.000 verzoeken per minuut per connector per project
  • Elke actie-aanroep wordt gelogd met een auditspoor (verbinding, actie, duur, status)
  • Verbindingen zijn gekoppeld aan de gehele workspace

Kan ik dezelfde verbinding gebruiken in meerdere projecten?

Ja. Maak de verbinding eenmalig aan en koppel deze aan elk gewenst aantal projecten binnen dezelfde workspace.

Wat gebeurt er als mijn API-sleutel verloopt of wordt ingetrokken?

De verbindingsstatus verandert naar Broken. Werk de inloggegevens bij via Settings > Connectors om de verbinding te herstellen.

Kan ik connectoracties aanroepen vanuit de frontend?

Nee. Connectoracties moeten worden aangeroepen vanuit server-side code (Convex-acties) om inloggegevens veilig te houden. De SDK routeert via Proyecta Cloud, dat authenticatie server-side injecteert.

Kan ik mijn eigen aangepaste connectors toevoegen?

Nog niet. Aangepaste connectordefinities staan op de roadmap.

  • Aanvullende connectors (Google, Twilio, SendGrid en meer)
  • Aangepaste connectordefinities — gebruik je eigen API
  • Webhook-ingestie voor inkomende events van verbonden diensten
  • OAuth-gateway — houd tokens server-side, ook voor door de client geïnitieerde flows