Skip to content
Official SDKs

Eight SDKs,one API.

Official clients for the sevk REST API. Each SDK includes a renderer that converts sevk Markup to HTML locally before sending.

Node.js

Docs
$npm install sevk
example.ts
1
2
3
4
5
6
7
8
9
10
import { Sevk } from 'sevk'

const sevk = new Sevk('sevk_xxx')

await sevk.emails.send({
  from: 'you@yourdomain.com',
  to: 'hello@example.com',
  subject: 'Hello from sevk',
  text: 'Sent with Node.js SDK.'
})
UTF-8LFSpaces: 2
10 lines

Python

Docs
$pip install sevk
example.py
1
2
3
4
5
6
7
8
9
10
from sevk import Sevk

sevk = Sevk("sevk_xxx")

sevk.emails.send({
    "from": "you@yourdomain.com",
    "to": "hello@example.com",
    "subject": "Hello from sevk",
    "text": "Sent with Python SDK."
})
UTF-8LFSpaces: 2
10 lines
$go get github.com/sevk-io/sevk-go
example.go
1
2
3
4
5
6
7
8
client := sevk.New("sevk_xxx")

client.Emails.Send(sevk.SendEmailParams{
    From:    "you@yourdomain.com",
    To:      "hello@example.com",
    Subject: "Hello from sevk",
    Text:    sevk.String("Sent with Go SDK."),
})
UTF-8LFSpaces: 2
8 lines

PHP

Docs
$composer require sevk-io/sevk-php
example.php
1
2
3
4
5
6
7
8
$sevk = new Sevk('sevk_xxx');

$sevk->emails->send([
    'from' => 'you@yourdomain.com',
    'to' => 'hello@example.com',
    'subject' => 'Hello from sevk',
    'text' => 'Sent with PHP SDK.'
]);
UTF-8LFSpaces: 2
8 lines

Ruby

Docs
$gem install sevk
example.rb
1
2
3
4
5
6
7
8
sevk = Sevk::Client.new(api_key: "sevk_xxx")

sevk.emails.send(
  from: "you@yourdomain.com",
  to: "hello@example.com",
  subject: "Hello from sevk",
  text: "Sent with Ruby SDK."
)
UTF-8LFSpaces: 2
8 lines

Rust

Docs
$cargo add sevk
example.rs
1
2
3
4
5
6
7
8
9
let client = sevk::Sevk::new("sevk_xxx");

client.emails().send(sevk::types::SendEmailRequest {
    from: "you@yourdomain.com".to_string(),
    to: "hello@example.com".into(),
    subject: "Hello from sevk".to_string(),
    text: Some("Sent with Rust SDK.".to_string()),
    ..Default::default()
}).await?;
UTF-8LFSpaces: 2
9 lines

Java

Docs
$io.sevk:sevk-java
example.java
1
2
3
4
5
6
7
Sevk sevk = new Sevk("sevk_xxx");

sevk.emails().send(new SendEmailRequest()
    .from("you@yourdomain.com")
    .to("hello@example.com")
    .subject("Hello from sevk")
    .text("Sent with Java SDK."));
UTF-8LFSpaces: 2
7 lines

.NET

Docs
$dotnet add package Sevk
example.cs
1
2
3
4
5
6
7
8
var sevk = new SevkClient("sevk_xxx");

await sevk.Emails.SendAsync(new SendEmailRequest {
    From = "you@yourdomain.com",
    To = "hello@example.com",
    Subject = "Hello from sevk",
    Text = "Sent with .NET SDK."
});
UTF-8LFSpaces: 2
8 lines
Also runs on

Bun.

The Node.js SDK works out of the box on Bun. No separate install, no shim. Same package, same imports, same API.

Bun integration docs
Get started

Pick a language.
Send an email.

Install, set your API key, call emails.send. Reference docs cover every endpoint.