HomeConvertNow KnowledgebaseMigrate from SendGrid to ConvertNow

Migrate from SendGrid to ConvertNow

SendGrid and ConvertNow share the same HTTP POST + Bearer token pattern. For most applications, migration is a drop-in change.



HTTP API

Before (SendGrid)

curl -X POST https://api.sendgrid.com/v3/mail/send \

-H “Authorization: Bearer SG.YOUR_SENDGRID_KEY” \

-H “Content-Type: application/json” \

-d ‘{

“personalizations”: [{ “to”: [{ “email”: “[email protected]” }] }],

“from”: { “email”: “[email protected]” },

“subject”: “Hello”,

“content”: [{ “type”: “text/html”, “value”: “<h1>Hi</h1>” }]

}’



After (ConvertNow)

curl -X POST https://api.convertnow.co/v1/email/send \

-H “Authorization: Bearer cn_live_YOUR_KEY” \

-H “Content-Type: application/json” \

-d ‘{“to”:”[email protected]”,”subject”:”Hello”,”html”:”<h1>Hi</h1>”}’



Key differences

No personalizations wrapper — pass to as a flat string or array

from is optional — defaults to your account sender; override per-request

content array replaced by flat html / text fields

Key prefix changes from SG. to cn_live_

cc and bcc are top-level fields



Node.js

Before (SendGrid SDK)

import sgMail from ‘@sendgrid/mail’;

sgMail.setApiKey(process.env.SENDGRID_API_KEY);

await sgMail.send({ to: ‘[email protected]’, from: ‘[email protected]’, subject: ‘Hi’, html: ‘<p>Hi</p>’ });



After (ConvertNow — no SDK needed)

await fetch(‘https://api.convertnow.co/v1/email/send’, {

method: ‘POST’,

headers: { ‘Authorization’: `Bearer ${process.env.CONVERTNOW_API_KEY}`, ‘Content-Type’: ‘application/json’ },

body: JSON.stringify({ to: ‘[email protected]’, subject: ‘Hi’, html: ‘<p>Hi</p>’ }),

});



SMTP settings

Setting

SendGrid

ConvertNow

Host

smtp.sendgrid.net

out.convertnow.co

Port

587

465 (implicit SSL), or 25 / 2525

Username

apikey (literal string)

your email address

Password

SG.YOUR_KEY

cn_live_YOUR_KEY



Feature status

Feature

Status

Sending domain authentication (DKIM, SPF, DMARC)

Built

Suppression list API

Built

Webhooks for delivery and failure events

Built

Transactional template system

Coming soon — render HTML in your app

Coming soon — render HTML in your app

This is a staging environment