OpenAI-kobling

Koble OpenAI til Brevo gjennom Tajo for å utnytte AI-drevet innholdsgenerering, analyse av kundesentiment, intelligent segmentering og prediktiv analyse i markedsføringsautomatiseringsarbeidsflytene dine.

Oversikt

EgenskapVerdi
PlattformOpenAI
KategoriAI / ML (Custom)
OppsettskompleksitetModerat
Offisiell integrasjonNei
Synkroniserte dataInnhold, embeddings, innsikt, prediksjoner
AutentiseringsmetodeAPI-nøkkel (Bearer-token)

Funksjoner

  • AI-innholdsgenerering - Generer emnelinjer, brødtekst og CTA-er med GPT-modeller
  • Analyse av kundesentiment - Analyser supportsaker og tilbakemeldinger for sentimentscoring
  • Smart segmentering - Bruk embeddings for å klynge kunder etter atferdsmønstre
  • Prediktiv analyse - Prognostiser churn, LTV og kjøpssannsynlighet
  • Flerspråklig innhold - Generer markedsføringsinnhold på alle støttede språk
  • Bildegenerering - Lag kampanjevisualer med DALL-E-integrasjon

Forutsetninger

Før du begynner, sørg for at du har:

  1. En OpenAI-konto med API-tilgang
  2. En API-nøkkel fra OpenAI-dashbordet
  3. En Brevo-konto med API-tilgang
  4. En Tajo-konto med konnektor-rettigheter
  5. Tilstrekkelig med OpenAI API-kreditt for forventet bruk

Autentisering

API-nøkkelautentisering

OpenAI bruker Bearer-tokenautentisering for alle API-forespørsler:

Terminal window
# Sett API-nøklene dine
export OPENAI_API_KEY=sk-your-api-key
export TAJO_API_KEY=your_tajo_api_key
export BREVO_API_KEY=your_brevo_api_key
// Alle forespørsler krever Authorization-header
const headers = {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
};
// For organisasjonsavgrenset tilgang
const orgHeaders = {
...headers,
'OpenAI-Organization': process.env.OPENAI_ORG_ID,
'OpenAI-Project': process.env.OPENAI_PROJECT_ID
};

API-nøkkelsikkerhet

Ikke eksponer OpenAI API-nøkkelen din i klientside-kode. Bruk alltid miljøvariabler og tjenersideforespørsler. Roter nøkler jevnlig via OpenAI-dashbordet.

Konfigurasjon

Grunnleggende oppsett

connectors:
openai:
enabled: true
model: "gpt-4o"
embedding_model: "text-embedding-3-small"
image_model: "dall-e-3"
features:
content_generation: true
sentiment_analysis: true
smart_segmentation: true
predictive_analytics: true
limits:
max_tokens_per_request: 4096
max_requests_per_minute: 60
temperature: 0.7

Maler for innholdsgenerering

templates:
email_subject:
model: "gpt-4o"
system_prompt: |
You are an expert email marketer. Generate compelling
subject lines that drive open rates.
max_tokens: 100
temperature: 0.8
email_body:
model: "gpt-4o"
system_prompt: |
Generate personalized email content based on customer
data and campaign objectives.
max_tokens: 2048
temperature: 0.7

API-endepunkter

EndepunktMetodeBeskrivelse
https://api.openai.com/v1/responsesPOSTOpprett AI-svar (Responses API)
https://api.openai.com/v1/chat/completionsPOSTGenerer tekstfullføringer
https://api.openai.com/v1/embeddingsPOSTOpprett tekst-embeddings
https://api.openai.com/v1/images/generationsPOSTGenerer bilder
https://api.openai.com/v1/audio/speechPOSTTekst-til-tale-generering
https://api.openai.com/v1/audio/transcriptionsPOSTTale-til-tekst-transkripsjon
https://api.openai.com/v1/moderationsPOSTInnholdsmoderasjon
https://api.openai.com/v1/modelsGETList tilgjengelige modeller

Kodeeksempler

Initialiser kobling

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
await tajo.connectors.connect('openai', {
apiKey: process.env.OPENAI_API_KEY,
defaultModel: 'gpt-4o'
});

Generer e-postinnhold

// Generer personaliserte e-postemnelinjer
const response = await fetch('https://api.openai.com/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o',
messages: [
{
role: 'system',
content: 'Generate 5 compelling email subject lines for a product launch.'
},
{
role: 'user',
content: `Product: ${product.name}. Target: ${segment.description}.`
}
],
max_tokens: 200,
temperature: 0.8
})
});
const result = await response.json();
const subjectLines = result.choices[0].message.content;

Sentimentanalyse av kunder

// Analyser sentiment i kundetilbakemeldinger
const sentimentAnalysis = await fetch(
'https://api.openai.com/v1/chat/completions',
{
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o',
messages: [
{
role: 'system',
content: 'Analyze sentiment. Return JSON: {score: -1 to 1, label: string, topics: string[]}'
},
{ role: 'user', content: customerFeedback }
],
response_format: { type: 'json_object' },
max_tokens: 150
})
}
);
const sentiment = await sentimentAnalysis.json();
await tajo.contacts.update(email, {
attributes: { SENTIMENT_SCORE: JSON.parse(sentiment.choices[0].message.content).score }
});

Smart segmentering med embeddings

// Generer embeddings for kundeklyngeanalyse
const embeddingResponse = await fetch(
'https://api.openai.com/v1/embeddings',
{
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.OPENAI_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'text-embedding-3-small',
input: customerDescriptions,
dimensions: 256
})
}
);
const embeddings = await embeddingResponse.json();
// Bruk embeddings for likhetsbasert kundeklyngeanalyse

Ratebegrensninger

ModellRPM (forespørsler/min)TPM (tokens/min)RPD (forespørsler/dag)
gpt-4o50030 00010 000
gpt-4o-mini500200 00010 000
text-embedding-3-small5001 000 00010 000
dall-e-35N/A200

Ratebegrensningsheadere

Overvåk ratebegrensningsheadere (x-ratelimit-remaining-requests, x-ratelimit-remaining-tokens) i API-svar for å implementere proaktiv struping og unngå 429-feil.

Feilsøking

ProblemÅrsakLøsning
401 UnauthorizedUgyldig API-nøkkelVerifiser nøkkelen i OpenAI-dashbordet
429 Rate LimitedFor mange forespørslerImplementer eksponentiell backoff
500 Server ErrorOpenAI-nedetidSjekk status.openai.com og prøv igjen
Avkortet responsmax_tokens for lavØk max_tokens-parameteren
Dårlig innholdskvalitetTemperature for høySenk temperature for konsistens

Feilsøkingsmodus

connectors:
openai:
debug: true
log_level: verbose
log_prompts: false # Ikke logg prompts i produksjon
log_usage: true

Beste praksis

  1. Cache svar - Lagre generert innhold for å redusere API-kall og kostnader
  2. Bruk strukturerte utdata - Be om JSON-svar for pålitelig parsing
  3. Implementer retry-logikk - Håndter ratebegrensninger med eksponentiell backoff
  4. Overvåk tokenbruk - Spor forbruk for å kontrollere kostnader
  5. Bruk passende modeller - Bruk gpt-4o-mini for enkle oppgaver, gpt-4o for komplekse
  6. Valider utdata - Valider alltid AI-generert innhold før det sendes til kunder

Sikkerhet

  • Bearer-tokenautentisering - API-nøkler overføres via Authorization-header
  • Kun tjenerside - Eksponer aldri API-nøkler i klientside-kode
  • Nøkkelrotasjon - Roter API-nøkler regelmessig via OpenAI-dashbordet
  • Bruksovervåking - Sett utgiftsgrenser i OpenAI-faktureringsinnstillinger
  • Innholdsmoderasjon - Bruk Moderations API for å filtrere usikkert innhold
  • Personvern - Gjennomgå OpenAIs retningslinjer for databruk for ditt bruksområde

Relaterte ressurser

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
AI-assistent

Hei! Spør meg om dokumentasjonen.