executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
sendgrid-mail-managementImplements features for sending emails, managing templates, handling marketing campaigns, and parsing inbound emails with the SendGrid API.
Independent GitHub snapshot · Automated classification · Original documentation governs
name: sendgrid-mail-management description: Implements features for sending emails, managing templates, handling marketing campaigns, and parsing inbound emails with the SendGrid API. license: MIT compatibility: opencode metadata: version: "1.0.0" domain: agent triggers: sendgrid, send email, email templates, marketing campaigns, inbound email parsing role: implementation scope: implementation output-format: code related-skills: coding-sendgrid-api, coding-email-management archetypes:
This skill integrates the SendGrid API to manage email functionalities, including sending transactional emails, handling email templates, managing marketing campaigns, and parsing inbound emails. Upon loading, this skill allows the model to create well-structured emails, utilize dynamic templates, and process email responses via webhooks.
SendGridAPIClient with SENDGRID_API_KEY from environment variables.Mail helper, adjusting for dynamic templates.SendGridAPIClient using SENDGRID_API_KEY. Ensure proper authentication by checking available scopes before sending emails.
Mail helper from sendgrid.helpers.mail to build the email. Specify from_email, to_emails, subject, and content as either HTML or plain text.
sg.send() with the constructed mail object, and handle responses appropriately.
import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail
def send_transactional_email(to_email, subject, html_content):
sg = SendGridAPIClient(os.environ['SENDGRID_API_KEY'])
message = Mail(
from_email='noreply@example.com',
to_emails=to_email,
subject=subject,
html_content=html_content,
)
try:
response = sg.send(message)
if response.status_code == 202:
print(f"Email sent to {to_email} with status code {response.status_code}")
else:
print(f"Failed to send email. Status code: {response.status_code}")
except Exception as e:
print(f"An error occurred: {str(e)}")
def send_dynamic_template_email(to_email, template_id, dynamic_data):
sg = SendGridAPIClient(os.environ['SENDGRID_API_KEY'])
message = Mail(
from_email='noreply@example.com',
to_emails=to_email,
)
message.template_id = template_id
message.dynamic_template_data = dynamic_data
try:
response = sg.send(message)
print(f"Dynamic email sent, response code: {response.status_code}")
except Exception as e:
print(f"Failed to send dynamic email: {str(e)}")
from flask import Flask, request
app = Flask(__name__)
@app.route('/inbound', methods=['POST'])
def inbound_webhook():
email_data = request.json
# Process email data here
print(f"Received email from: {email_data['from']}")
return "OK", 200
SENDGRID_API_KEY securely as an environment variable.Mail helper instead of constructing HTTP request bodies manually.| Skill | Purpose |
|---|---|
| coding-sendgrid-api | For general SendGrid API interactions |
| coding-email-management | For managing and sending emails through another platform |
Authorative documentation links for this domain. The model follows markdown links at load time to resolve external references and inline content.
/v3/mail/send endpoint