AI Newsletter Generator Agent Skill — AI Pass API
Overview
The AI Pass "AI Newsletter Generator" (slug: newsletter-gen) skill generates professional email newsletters from a short topic or brief. Given a topic, target audience, tone, and other preferences, the skill produces a complete newsletter package: subject lines and preheaders, structured sections (lead, body sections, feature blocks), formatting suggestions, and one or more clear CTAs ready to send or paste into an ESP.
Use cases for AI agents
- Automatically create weekly or monthly newsletters from content briefs or blog posts.
- Generate templated marketing emails with tailored CTAs and tone for different audience segments.
- Produce internal company updates (product, engineering, ops) from meeting notes or release briefs.
- Assist content teams by drafting multiple subject line variants and preheaders for A/B testing.
Skill File (YAML)
name: newsletter-gen
description: Generates professional email newsletters from a topic or brief
version: "1.0"
auth:
type: bearer
token_env: AIPASS_API_KEY
endpoints:
- name: generate
method: POST
url: https://aipass.one/apikey/v1/chat/completions
headers:
Authorization: "Bearer $AIPASS_API_KEY"
Content-Type: application/json
Example Usage
Curl example
curl -s -X POST "https://aipass.one/apikey/v1/chat/completions" \
-H "Authorization: Bearer $AIPASS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "aipass-gpt-4",
"messages": [
{"role":"system","content":"You are an expert email copywriter. Produce a concise, professional newsletter with subject lines, preheader, 3 content sections, a prominent CTA, and a short plain-text summary."},
{"role":"user","content":"Topic: New product launch — SmartHome Thermostat v2. Audience: existing customers and prospects. Tone: friendly and informative. Include one promotional CTA and one educational CTA. Keep it under 400 words."}
],
"max_tokens": 800,
"temperature": 0.2
}'
Python example
import os
import requests
AIPASS_API_KEY = os.environ["AIPASS_API_KEY"]
url = "https://aipass.one/apikey/v1/chat/completions"
headers = {
"Authorization": f"Bearer {AIPASS_API_KEY}",
"Content-Type": "application/json",
}
payload = {
"model": "aipass-gpt-4",
"messages": [
{"role": "system", "content": "You are an expert email copywriter. Produce a concise, professional newsletter with subject lines, preheader, 3 content sections, a prominent CTA, and a short plain-text summary."},
{"role": "user", "content": "Topic: New product launch — SmartHome Thermostat v2. Audience: existing customers and prospects. Tone: friendly and informative. Include one promotional CTA and one educational CTA. Keep it under 400 words."}
],
"max_tokens": 800,
"temperature": 0.2,
}
resp = requests.post(url, headers=headers, json=payload)
resp.raise_for_status()
print(resp.json())
Available Models
- aipass-gpt-4 — high-quality, long-form outputs; best for full newsletter drafts and multiple variants.
- aipass-gpt-4o — optimized for conversational speed with strong quality for email copy.
- aipass-gpt-3.5-turbo — cost-efficient, good for shorter newsletters and quick drafts.
- aipass-creative-1 — tailored for marketing and creative copy generation (subject lines, CTAs, promotional tone).
Get Your API Key
Create and manage API keys in the Developer Dashboard — go to https://aipass.one/panel/developer.html and open the API Keys section to generate your key. Use the AIPASS_API_KEY environment variable in your integration.
Related Apps
- Newsletter Generator app: https://aipass.one/apps/newsletter-gen
Note: Never include real API keys in code or documentation. Use the environment variable AIPASS_API_KEY (shown here as $AIPASS_API_KEY) in examples. If you need to reference a client ID, use YOUR_CLIENT_ID.
Skill File
name: ai_pass_newsletter_generator
version: "1.0"
description: >
Generates professional email newsletters from a topic or brief using the AI Pass
AI Newsletter Generator API.
platforms:
- openclaw
- generic-agent
auth:
type: env_api_key
env_var: AIPASS_API_KEY
in: header
header_name: Authorization
header_value_prefix: "Bearer "
base:
url: "https://aipass.one/apikey/v1"
endpoints:
- id: generate_newsletter
name: Generate Newsletter
description: Generates a professional email newsletter from a topic or brief.
method: POST
path: "/chat/completions"
headers:
Content-Type: "application/json"
Authorization: "{{auth.header_value_prefix}}{{env.AIPASS_API_KEY}}"
request:
body:
model: "{{model | default('aipass-newsletter-1')}}"
temperature: "{{temperature | default(0.7)}}"
max_tokens: "{{max_tokens | default(800)}}"
messages:
- role: system
content: >-
You are a professional newsletter writer. Produce a clear, engaging,
on-brand email newsletter based on the user's inputs. Include subject
line, preheader, introduction, 2-4 body sections, a prominent CTA,
and a short sign-off. Use a professional and friendly tone unless
otherwise specified.
- role: user
content: >-
Topic: {{topic}}
Brief / Key points: {{brief | default('')}}
Target audience: {{audience | default('general subscribers')}}
Tone: {{tone | default('professional and friendly')}}
Desired length: {{length | default('medium')}}
Include CTA: {{include_cta | default(true)}}
CTA text (if provided): {{cta_text | default('Learn more')}}
Additional instructions: {{additional_instructions | default('')}}
input_schema:
type: object
required:
- topic
properties:
topic:
type: string
description: Short topic or headline for the newsletter (required).
brief:
type: string
description: Optional brief or bullet points to include.
audience:
type: string
description: Target audience for the newsletter.
tone:
type: string
description: Tone or voice to use (e.g., professional, casual, upbeat).
length:
type: string
enum: [short, medium, long]
description: Approximate length of the newsletter.
include_cta:
type: boolean
description: Whether to include a call-to-action.
cta_text:
type: string
description: Text for the CTA (if omitted a suggested CTA will be generated).
additional_instructions:
type: string
description: Any other instructions or constraints.
model:
type: string
description: Model name to use (defaults to aipass-newsletter-1).
temperature:
type: number
description: Sampling temperature.
max_tokens:
type: integer
description: Maximum tokens for the completion.
response:
status_codes:
- 200
content_type: application/json
mapping:
newsletter: "choices[0].message.content"
raw: "$"
examples:
- name: Example - Product Update
input:
topic: "April Product Update: Faster Sync & New Integrations"
brief: "- Improved sync performance\n- Added Slack & Notion integrations\n- Pricing unchanged"
audience: "existing customers and free-tier users"
tone: "friendly and informative"
length: "medium"
include_cta: true
cta_text: "Upgrade to Pro"
note: "Returns a complete email newsletter including subject, preheader, body sections, CTA, and sign-off."
metadata:
maintainers:
- name: AI Pass Integration Team
license: proprietary
created_at: 2026-03-22
Download Skill File