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.
Beschikbare connectors
Section titled “Beschikbare connectors”| Connector | Categorie | Authenticatietype | Wat het doet |
|---|---|---|---|
| Resend | Communicatie | API-sleutel | Verstuur transactionele e-mail, verzend batch-e-mails, bekijk geverifieerde domeinen |
| Slack | Communicatie | OAuth | Berichten plaatsen, kanalen en gebruikers weergeven, reageren op berichten, threads lezen |
| ElevenLabs | AI | API-sleutel | Tekst-naar-spraak, beschikbare stemmen weergeven, geluidseffecten genereren |
Er worden regelmatig nieuwe connectors toegevoegd.
Hoe connectors werken
Section titled “Hoe connectors werken”- Je maakt een verbinding aan — geef inloggegevens op (een API-sleutel of meld je aan via OAuth)
- Je koppelt de verbinding aan een project — hiermee geef je het project toestemming om die inloggegevens te gebruiken
- 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.
Een connector instellen
Section titled “Een connector instellen”- Open je project in de builder
- Ga naar Settings > Connectors
- Klik op een connector uit de catalogus (bijv. Resend)
- Voer je inloggegevens in:
- API-sleutel-connectors (Resend, ElevenLabs): plak je geheime sleutel
- OAuth-connectors (Slack): meld je aan en verleen toegang
- Geef de verbinding een naam (bijv. “Production Resend”)
- De verbinding wordt automatisch getest en als Active gemarkeerd indien geldig
Een connector gebruiken in je app
Section titled “Een connector gebruiken in je app”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:
| Veld | Beschrijving |
|---|---|
output | De retourwaarde van de actie (de vorm is afhankelijk van de actie) |
durationMs | Uitvoeringstijd in milliseconden |
invocationId | ID van de auditlogboekvermelding |
Laat de AI het voor je regelen
Section titled “Laat de AI het voor je regelen”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
Referentie voor connectoracties
Section titled “Referentie voor connectoracties”Resend
Section titled “Resend”| Actie | Neveneffecten | Beschrijving |
|---|---|---|
sendEmail | schrijven | Verstuur één transactionele e-mail |
sendBatch | schrijven | Verstuur meerdere e-mails tegelijk |
listDomains | lezen | Geef geverifieerde verzendende domeinen weer |
| Actie | Neveneffecten | Beschrijving |
|---|---|---|
postMessage | schrijven | Plaats een bericht in een kanaal |
listChannels | lezen | Geef kanalen in de workspace weer |
listUsers | lezen | Geef leden van de workspace weer |
reactToMessage | schrijven | Voeg een emoji-reactie toe |
getThread | lezen | Haal reacties in een thread op |
ElevenLabs
Section titled “ElevenLabs”| Actie | Neveneffecten | Beschrijving |
|---|---|---|
textToSpeech | schrijven | Zet tekst om naar spraakgeluid |
listVoices | lezen | Geef beschikbare stemmen weer |
generateSoundEffect | schrijven | Genereer een AI-geluidseffect |
Verbindingsstatussen
Section titled “Verbindingsstatussen”| Status | Betekenis |
|---|---|
| Active | Inloggegevens zijn geldig en de verbinding is klaar voor gebruik |
| Broken | Inloggegevens zijn verlopen of ingetrokken — werk ze bij om de verbinding te herstellen |
Beveiliging
Section titled “Beveiliging”- 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
Veelgestelde vragen
Section titled “Veelgestelde vragen”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.
Binnenkort beschikbaar
Section titled “Binnenkort beschikbaar”- 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