sales-postmark
Postmark platform help — transactional email delivery via REST API (`POST /email`, `POST /email/batch`), SMTP relay, Message Streams (transactional vs broadcast isolation), Handlebars Templates with layout inheritance, Inbound Email parsing, Webhooks (bounce, delivery, open, click, spam complaint, subscription change, inbound), DMARC Monitoring, Bounce Management (Rebound), Suppressions, Statistics, Bulk API, Sender Signatures, and domain authentication. Use when transactional emails aren't arriving, Postmark bounce rates are climbing, unsure how to separate transactional from broadcast streams, templates aren't rendering correctly, inbound email parsing is broken, webhooks aren't firing, or DMARC reports show authentication failures. Do NOT use for general email marketing strategy (use /sales-email-marketing), cross-platform email deliverability (use /sales-deliverability), email open/click tracking strategy (use /sales-email-tracking), or SendGrid-specific questions (use /sales-sendgrid).
What this skill does
# Postmark Platform Help
Help the user with Postmark (ActiveCampaign) platform questions — from transactional email via the REST API and SMTP relay through Message Streams, Handlebars Templates, Inbound Email, Webhooks, DMARC Monitoring, Bounce Management, Suppressions, Statistics, and integrations. Postmark is laser-focused on transactional email with best-in-class deliverability (98.7% inbox placement), originally built by Wildbit (Natalie & Chris Nagele) and acquired by ActiveCampaign in 2022.
## Step 1 — Gather context
If `references/learnings.md` exists, read it first for accumulated knowledge.
Ask the user:
1. **What area of Postmark do you need help with?**
- A) Email API — sending transactional email via REST API (`POST /email`, `POST /email/batch`), SDKs
- B) SMTP relay — traditional SMTP integration for frameworks that don't support API
- C) Message Streams — separating transactional and broadcast (newsletters/announcements) infrastructure
- D) Templates — server-side Handlebars templates, layout inheritance, cross-server pushing
- E) Inbound Email — receiving and parsing incoming emails via webhook
- F) Webhooks — bounce, delivery, open, click, spam complaint, subscription change, inbound events
- G) DMARC Monitoring — free weekly DMARC reports, paid detailed monitoring
- H) Bounce Management / Suppressions — automatic bounce processing, suppression lists
- I) Statistics — opens, clicks, delivery rates, bounce rates, spam complaints
- J) Sender Signatures — verified sender addresses and domains
- K) Account / Billing — plans, pricing, servers, API tokens
- L) Something else — describe it
2. **What's your role?**
- A) Developer / engineer
- B) DevOps / infrastructure
- C) Admin / account owner
- D) Founder / solo operator
- E) Agency / freelancer
- F) Other
3. **What are you trying to accomplish?** (describe your specific goal or question)
**If the user's request already provides most of this context, skip directly to the relevant step.** Lead with your best-effort answer using reasonable assumptions (stated explicitly), then ask only the most critical 1-2 clarifying questions at the end — don't gate your response behind gathering complete context.
Note: If the user needs a specialized skill, route them there with a brief explanation of why that skill is a better fit.
## Step 2 — Route or answer directly
If the request maps to a specialized skill, route:
- General email marketing strategy / best practices -> `/sales-email-marketing`
- Cross-platform email deliverability (not Postmark-specific) -> `/sales-deliverability`
- Email open/click tracking strategy -> `/sales-email-tracking`
- SendGrid-specific questions -> `/sales-sendgrid`
- Connecting Postmark to other tools via Zapier or middleware -> `/sales-integration`
- Funnel strategy / conversion optimization -> `/sales-funnel`
Otherwise, answer directly from platform knowledge using the reference below.
## Step 3 — Postmark platform reference
**Read `references/platform-guide.md`** for detailed module documentation, pricing, integrations, and data model.
*You no longer need the platform guide details — focus on the user's specific situation.*
## Step 4 — Actionable guidance
Based on the user's specific question:
1. **Sending transactional email via the API**:
1. Create a server in the Postmark UI (or use the default server)
2. Copy the Server API Token from the server's credentials page
3. Add and verify a Sender Signature — either a single email address or an entire domain (add DKIM and Return-Path CNAME records to DNS)
4. Install the SDK for your language (e.g., `npm install postmark` for Node.js)
5. Initialize the client: `const client = new postmark.ServerClient("YOUR_SERVER_TOKEN")`
6. Send an email: set `From`, `To`, `Subject`, `HtmlBody`/`TextBody` (or use `TemplateId` + `TemplateModel`)
7. Handle the response — check for `ErrorCode: 0` (success) or specific error codes
8. Use `POSTMARK_API_TEST` as the server token during development to test without sending real email
2. **Setting up Message Streams for transactional and broadcast**:
1. Navigate to your server in the Postmark UI
2. The default transactional stream already exists — use it for password resets, receipts, alerts
3. Create a new broadcast stream: Servers > [Your Server] > Message Streams > Add Stream > Broadcast
4. Name the stream (e.g., "Newsletter", "Product Updates")
5. In your API calls, pass `"MessageStream": "your-broadcast-stream-id"` to route to the broadcast stream
6. Configure separate webhooks per stream if needed
7. Monitor each stream's statistics independently to track reputation health
3. **Setting up Handlebars templates with layout inheritance**:
1. Create a layout template first: Templates > Add Template > Layout
2. Define the layout with `{{{@content}}}` placeholder where content templates will be injected
3. Include shared elements in the layout: header, footer, styles, unsubscribe links
4. Create content templates that reference the layout via the `LayoutTemplate` field
5. Use Handlebars syntax in content templates: `{{variable}}`, `{{#if condition}}`, `{{#each items}}`
6. Validate templates via the API (`POST /templates/{id}/validate`) with sample data
7. Push templates between servers (staging to production) via the Template Push API
4. **Processing inbound email**:
1. Upgrade to Pro plan or above (inbound email is not available on Developer or Basic plans)
2. Add an MX record for your receiving domain: `10 inbound.postmarkapp.com`
3. Configure the inbound webhook URL in the Postmark UI under your server's Inbound settings
4. Optionally set up inbound rules to filter which recipient addresses trigger webhooks
5. Implement your webhook endpoint to receive JSON payloads with parsed fields (From, To, Subject, HtmlBody, TextBody, Attachments)
6. Handle attachments — they arrive as base64-encoded content in the JSON payload
7. Return a 200 status code from your endpoint to acknowledge receipt
5. **Setting up DMARC monitoring**:
1. Add a DMARC DNS record for your domain: `v=DMARC1; p=none; rua=mailto:[email protected]`
2. Free weekly digests start arriving automatically — summarize who is sending email as your domain
3. For detailed monitoring ($14/mo/domain), sign up at dmarc.postmarkapp.com
4. Review reports to identify unauthorized senders and SPF/DKIM alignment failures
5. Gradually tighten your DMARC policy: `p=none` -> `p=quarantine` -> `p=reject` as you confirm all legitimate senders are authenticated
## Gotchas
> Best-effort from research — verify details against current Postmark documentation.
1. **Dedicated IPs require a minimum sending volume of 300K emails/month.** Unlike SendGrid or Mailchimp where you can buy a dedicated IP at lower volumes, Postmark requires sustained high volume to maintain IP reputation. If you send fewer than 300K/month, Postmark's shared IP pools actually deliver better results — their sender vetting process keeps shared IP reputation exceptionally high. Don't assume dedicated = better.
2. **Inbound Email is only available on Pro plan and above.** If you need to receive and parse incoming email (reply processing, support tickets, email-to-app workflows), the Developer and Basic plans will not work. Budget for at least Pro ($16.50/mo) if inbound email is part of your architecture.
3. **Transactional and broadcast streams have separate suppression lists but share a single bill.** While Message Streams isolate sending reputation, suppressions are per-stream — an address suppressed in your broadcast stream can still receive transactional email, and vice versa. This is intentional (a user unsubscribing from your newsletter should still get password resets) but can surprise teams expecting a single global suppression list.
4. **Postmark has a sender vetting process — you canRelated in Backend & APIs
jfrog
IncludedInteract with the JFrog Platform via the JFrog CLI and REST/GraphQL APIs. Use this skill when the user wants to manage Artifactory repositories, upload or download artifacts, manage builds, configure permissions, manage users and groups, work with access tokens, configure JFrog CLI servers, search artifacts, manage properties, set up replication, manage JFrog Projects, run security audits or scans, look up CVE details, query exposures scan results from JFrog Advanced Security, manage release bundles and lifecycle operations, aggregate or export platform data, or perform any JFrog Platform administration task. Also use when the user mentions jf, jfrog, artifactory, xray, distribution, evidence, apptrust, onemodel, graphql, workers, mission control, curation, advanced security, exposures, or any JFrog product name.
cupynumeric-migration-readiness
IncludedPre-migration readiness assessor for porting NumPy to cuPyNumeric. Use BEFORE substantial porting work begins when the user asks whether code will scale on GPU, whether they should migrate to cuPyNumeric, which NumPy patterns transfer cleanly, what must be refactored before porting, or mentions pre-port assessment, scaling analysis, or refactor planning. Inspect the user's source code, look up NumPy usage, cross-reference the cuPyNumeric API support manifest, and distinguish distributed-scaling-friendly patterns from blockers such as unsupported APIs, scalar synchronization, host round-trips, Python/object-heavy control flow, shape/data-dependent branching, and in-place mutation hazards. Produce a verdict of READY, LIGHT REFACTOR, SIGNIFICANT REFACTOR, or NOT RECOMMENDED, with concrete refactor pointers.
alibabacloud-data-agent-skill
IncludedInvoke Alibaba Cloud Apsara Data Agent for Analytics via CLI to perform natural language-driven data analysis on enterprise databases. Data Agent for Analytics is an intelligent data analysis agent developed by Alibaba Cloud Database team for enterprise users. It automatically completes requirement analysis, data understanding, analysis insights, and report generation based on natural language descriptions. This tool supports: discovering data resources (instances/databases/tables) managed in DMS, initiating query or deep analysis sessions, real-time progress tracking, and retrieving analysis conclusions and generated reports. Use this Skill when users need to query databases, analyze data trends, generate data reports, ask questions in natural language, or mention "Data Agent", "data analysis", "database query", "SQL analysis", "data insights".
token-optimizer
IncludedReduce OpenClaw token usage and API costs through smart model routing, heartbeat optimization, budget tracking, and native 2026.2.15 features (session pruning, bootstrap size limits, cache TTL alignment). Use when token costs are high, API rate limits are being hit, or hosting multiple agents at scale. The 4 executable scripts (context_optimizer, model_router, heartbeat_optimizer, token_tracker) are local-only — no network requests, no subprocess calls, no system modifications. Reference files (PROVIDERS.md, config-patches.json) document optional multi-provider strategies that require external API keys and network access if you choose to use them. See SECURITY.md for full breakdown.
resend-cli
IncludedUse this skill when the task is specifically about operating Resend from an AI agent, terminal session, or CI job via the official resend CLI: installing/authenticating the CLI, sending/listing/updating/cancelling emails, batch sends, domains and DNS, webhooks and local listeners, inbound receiving, contacts, topics, segments, broadcasts, templates, API keys, profiles, or debugging Resend CLI/API failures. Trigger on mentions of Resend CLI, `resend`, `resend doctor`, `resend emails send`, `resend domains`, `resend webhooks listen`, `resend emails receiving`, or agent-friendly terminal automation.
alibabacloud-odps-maxframe-coding
IncludedUse this skill for MaxFrame SDK development and documentation navigation on Alibaba Cloud MaxCompute (ODPS). Helps answer MaxFrame API, concept, official example, and supported pandas API questions; create data processing programs; read/write MaxCompute tables; debug jobs (remote or local); and build custom DPE runtime images. Trigger when users mention MaxFrame, MaxCompute with MaxFrame, ODPS table processing, DPE runtime, MaxFrame docs/examples, DataFrame/Tensor operations, or GPU runtime setup. Works for both English and Chinese queries about Alibaba Cloud data processing with MaxFrame.