Go
available
Install
go get github.com/verusuite/veruapis-sdk/[email protected]
Then
api := veruapis.New(os.Getenv("VERUAPIS_KEY"))
folders, err := api.Mail.ListFolders(ctx)
if err != nil {
var apiErr *veruapis.Error
if errors.As(err, &apiErr) && apiErr.IsPermissionProblem() {
log.Fatalf("this key is missing %s", apiErr.Code)
}
}
for msg, err := range api.Mail.Messages(ctx, veruapis.ListMessagesOptions{
FolderID: []string{folders[0].ID},
}) {
if err != nil {
return err
}
fmt.Println(msg.Subject)
}
Needs Go 1.23 or later.
TypeScript and JavaScript
available
Install
npm install @verusuite/api
Then
const api = new VeruApi({ apiKey: process.env.VERUAPIS_KEY });
const folders = await api.mail.listFolders();
for await (const message of api.mail.messages({ folder_id: folders[0].id })) {
console.log(message.subject);
}
await api.mail.send({
to: ["[email protected]"],
subject: "Nightly report",
text: "All green.",
});
Needs Node 18 or later.
Python
soon
Written and tested, but not on PyPI yet, so there is no pip install that works today. Clone the repository and install the python/ directory. It publishes as veruapis.
Then
api = VeruApi(api_key=os.environ["VERUAPIS_KEY"])
for folder in api.mail.list_folders():
print(folder.name, folder.unread_count)
api.mail.send(
to=["[email protected]"],
subject="Nightly report",
text="All green.",
)
Needs Python 3.9 or later, and nothing else.
C#
soon
Written and tested, but not on NuGet yet, so there is no dotnet add package that works today. Clone the repository and reference the project. It publishes as VeruSuite.Api.
Then
var api = new VeruApiClient(Environment.GetEnvironmentVariable("VERUAPIS_KEY"));
var folders = await api.Mail.ListFoldersAsync();
await api.Mail.SendAsync(new SendMessage {
To = ["[email protected]"],
Subject = "Nightly report",
Text = "All green.",
});
Needs the .NET 8 SDK or later, and no packages.