Integration with AI Services (Advanced)
OpenAI
Python
import openaiimport requests def generate_and_send_email(openai_api_key, lemon_api_key, user_data): openai.api_key = openai_api_key # Generate content with OpenAI response = openai.Completion.create( engine="text-davinci-002", prompt=f"Write an email to {user_data['name']} about their recent activity: {user_data['activity']}", max_tokens=200 ) email_content = response.choices[0].text.strip() # Send email using Lemon API response = requests.post( 'https://app.xn--lemn-sqa.com/api/transactional/send', headers={ 'Content-Type': 'application/json', 'X-Auth-APIKey': lemon_api_key }, json={ "fromname": "Your SaaS", "fromemail": "noreply@yoursaas.com", "to": user_data['email'], "subject": "Your Activity Update", "body": f"<html><body>{email_content}</body></html>" } ) return response.json() # Usageresult = generate_and_send_email( 'your_openai_api_key', 'your_lemon_api_key', { "name": "John", "email": "john@example.com", "activity": "Completed 5 workouts this week" })print(result)
Anthropic (Claude)
JS
const axios = require('axios'); async function generateAndSendEmail(anthropicApiKey, lemonApiKey, userData) { // Generate content with Anthropic's Claude const anthropicResponse = await axios.post( 'https://api.anthropic.com/v1/complete', { prompt: `Human: Write an email to ${userData.name} about their recent activity: ${userData.activity}\n\nAssistant:`, model: "claude-v1", max_tokens_to_sample: 200, stop_sequences: ["\n\nHuman:"] }, { headers: { 'Content-Type': 'application/json', 'X-API-Key': anthropicApiKey } } ); const emailContent = anthropicResponse.data.completion.trim(); // Send email using Lemon API const lemonResponse = await axios.post( 'https://app.xn--lemn-sqa.com/api/transactional/send', { fromname: "Your SaaS", fromemail: "noreply@yoursaas.com", to: userData.email, subject: "Your Activity Update", body: `<html><body>${emailContent}</body></html>` }, { headers: { 'Content-Type': 'application/json', 'X-Auth-APIKey': lemonApiKey } } ); return lemonResponse.data;} // UsagegenerateAndSendEmail( 'your_anthropic_api_key', 'your_lemon_api_key', { name: "John", email: "john@example.com", activity: "Completed 5 workouts this week" }).then(result => console.log(result)).catch(error => console.error(error));
Google AI
Python
from google.cloud import aiplatformfrom google.protobuf import json_formatfrom google.protobuf.struct_pb2 import Valueimport requests def generate_and_send_email(project_id, location, model_name, lemon_api_key, user_data): # Initialize Google AI Platform client aiplatform.init(project=project_id, location=location) # Generate content with Google AI model = aiplatform.Model(model_name=model_name) instance = json_format.ParseDict({"prompt": f"Write an email to {user_data['name']} about their recent activity: {user_data['activity']}"}, Value()) parameters = json_format.ParseDict({"temperature": 0.2, "maxOutputTokens": 256, "topK": 40, "topP": 0.95}, Value()) response = model.predict([instance], parameters=parameters) email_content = response.predictions[0] # Send email using Lemon API response = requests.post( 'https://app.xn--lemn-sqa.com/api/transactional/send', headers={ 'Content-Type': 'application/json', 'X-Auth-APIKey': lemon_api_key }, json={ "fromname": "Your SaaS", "fromemail": "noreply@yoursaas.com", "to": user_data['email'], "subject": "Your Activity Update", "body": f"<html><body>{email_content}</body></html>" } ) return response.json() # Usageresult = generate_and_send_email( 'your-google-cloud-project-id', 'us-central1', 'text-bison@001', 'your_lemon_api_key', { "name": "John", "email": "john@example.com", "activity": "Completed 5 workouts this week" })print(result)
IBM Watson
Python
from ibm_watson import AssistantV2from ibm_cloud_sdk_core.authenticators import IAMAuthenticatorimport requests def generate_and_send_email(watson_api_key, watson_url, watson_assistant_id, lemon_api_key, user_data): # Initialize Watson Assistant authenticator = IAMAuthenticator(watson_api_key) assistant = AssistantV2( version='2021-06-14', authenticator=authenticator ) assistant.set_service_url(watson_url) # Generate content with Watson response = assistant.message( assistant_id=watson_assistant_id, input={ 'text': f"Write an email to {user_data['name']} about their recent activity: {user_data['activity']}" } ).get_result() email_content = response['output']['generic'][0]['text'] # Send email using Lemon API response = requests.post( 'https://app.xn--lemn-sqa.com/api/transactional/send', headers={ 'Content-Type': 'application/json', 'X-Auth-APIKey': lemon_api_key }, json={ "fromname": "Your SaaS", "fromemail": "noreply@yoursaas.com", "to": user_data['email'], "subject": "Your Activity Update", "body": f"<html><body>{email_content}</body></html>" } ) return response.json() # Usageresult = generate_and_send_email( 'your_watson_api_key', 'your_watson_url', 'your_watson_assistant_id', 'your_lemon_api_key', { "name": "John", "email": "john@example.com", "activity": "Completed 5 workouts this week" })print(result)