Docs Getting Started

Quickstart

Send your first email in minutes with this step-by-step guide.

Overview

This guide walks you through creating an account, building your first template, and sending an email via the API. You’ll be up and running in minutes.

Step 1: Create an Account

  1. Go to mailsh.it/login
  2. Enter your email address
  3. Check your inbox for a verification code
  4. Enter the code to complete signup

No credit card required. The free tier includes 100 credits per month.

Step 2: Create a Project

After signing in, you’ll land on the Projects page.

  1. Click New Project
  2. Give it a name (e.g., “Welcome Emails”)
  3. Click Create

Projects are containers for templates and flows. You might have separate projects for different apps or use cases.

Step 3: Create a Template

  1. Inside your project, click New Template
  2. The visual editor opens with a blank canvas

Try adding some content:

  • Click on a section to add text
  • Use the toolbar to format text (bold, links, etc.)
  • Add variables using the {{name|default}} syntax

Example: Add a heading with Hello {{firstName|there}}!

Step 4: Connect a Provider

Before sending emails, you need to connect an email provider.

  1. Go to Settings from the sidebar
  2. Click Add Provider
  3. Choose your provider (e.g., Resend)
  4. Enter your API key and sender email
  5. Click Save

Don’t have a provider? Resend offers a generous free tier to get started.

Step 5: Set Up the Flow

Back in your project, you’ll see the flow editor:

  1. Your template appears as a node
  2. Variables are shown as inputs
  3. Add a Provider Output node and connect it to your template
  4. Select your configured provider

The flow determines what happens when you trigger the API.

Step 6: Send via API

Create an API key in Settings > API Keys, then make a request:

curl -X POST https://api.mailsh.it/v1/execute \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "templateId": "your_template_id",
    "variables": {
      "firstName": "Alice"
    },
    "_to": "alice@example.com"
  }'

If everything is configured correctly, you’ll receive a response like:

{
  "success": true,
  "type": "sent",
  "messageId": "abc123..."
}

What’s Next?