Blog

Notes from building Pimi: support email and ticketing, APIs and webhooks, and running your own servers.

PimiPulse

How much RAM does a WordPress server need?

A small WordPress site runs on 1 GB with a page cache. A shop or several sites need 2 GB or more. How to work out the number for your own server.

PimiPulse

Why MySQL keeps getting killed on your VPS

When a VPS runs out of memory, Linux stops the biggest program, which is usually MySQL. How to confirm it, what grew, and how to stop it happening again.

PimiDesk

Shared inbox or ticketing system: which does your support need?

A shared inbox suits mail that is a conversation. A ticketing system suits requests that must be tracked to done. How to tell which your support mail is.

PimiPulse

When to upgrade your VPS, and when not to

Upgrade your VPS when memory, disk or processor is short on most days, not after one slow day. How to check each, and what to try before paying more.

PimiDeploy

Running Pimi on Pimi: our products on our own tools

Pimi's own products run on Pimi's tools: PimiDeploy set up and deploys two production servers, PimiPulse watches them, PimiDesk answers the mail.

PimiDesk

Helpdesk Webhooks: Get Ticket Events Into Your Own System

Polling GET /tickets misses transitions and burns quota. The 17 events PimiDesk fires, the signature check done right, and why the delivery id is the wrong dedupe key.

PimiDesk

Your Email Threading Anchor Is Forgeable. Sign It.

A sequential ticket id in the References header is guessable — and the payload is another customer's conversation. The exploit chain, and the HMAC anchor that closes it.

PimiDesk

API-First Helpdesk Alternatives to Zendesk

When an API-first helpdesk beats Zendesk, what you lose by moving, and who should stay. With a sourced comparison table.

PimiDesk

How to Import Tickets into Your Helpdesk via API

Bulk-import tickets over REST without losing history: contacts, message order, internal notes, idempotency, rate limits — with runnable code.

PimiDesk

How to Receive Inbound Email With Amazon SES

SES has no inbound webhook. The receipt rule, S3 and SQS pipeline, MIME parsing, deduplication, spam verdicts — and the Message-ID rewrite that silently breaks reply threading.

PimiDesk

Mailgun vs Amazon SES: Which Should You Build On?

Cost, inbound architecture, Message-ID handling, and operational burden. A practical comparison for anyone whose product runs on email.

PimiDesk

Why API-First Helpdesk Over AI Chat

Structured ticket management beats chatbot complexity for most support workflows. Just an API key — no chatbot training, no AI hallucinations.

PimiDesk

How to Automate Support Tickets with AI Agents

Connect Claude, ChatGPT, or any LLM to your helpdesk via API. Triage tickets, draft replies, tag conversations, and manage your support pipeline with AI agents.

PimiDesk

How to Integrate a Helpdesk API Into Your Product

A practical guide to adding ticket management and customer support to your app using a helpdesk API. Code examples, architecture patterns, and common pitfalls.

PimiDesk

How Email-to-Ticket Automation Works

Convert inbound emails into trackable support tickets automatically. No manual data entry. PimiDesk handles email threading, CC tracking, and attachments.

PimiDesk

Why Your Team Needs a Unified Inbox for Support

A unified inbox puts all your customer conversations in one place. Shared visibility, clear ownership, and no more digging through personal email accounts.

PimiDesk

Support Ticket Management: What It Is and Why It Matters

Support ticket management turns messy customer emails into organized, trackable requests. Here's how it works and what to look for in a system.