Rust SDK

Async client for Rust services, workers, and backend jobs.

Installation

notification-system-sdk = "1.0.0"

Requirements

  • Rust 1.75 or later
  • Tokio runtime for async requests

Quick Start

use notification_system_sdk::{NotificationClient, NotificationRequest};

let client = NotificationClient::new("ntf_your_api_key_here")?;

let response = client.send_notification(NotificationRequest {
    channels: vec!["email".into(), "sms".into()],
    content: "Hello from Rust".into(),
    targets: vec!["user@example.com".into(), "+1234567890".into()],
    ..Default::default()
}).await?;

println!("{}", response.id);

Platform Integration API Keys

let integration = client.create_integration(
    "project-id",
    PlatformIntegration {
        name: "Production Worker".into(),
        platform_type: "backend".into(),
        environment: "production".into(),
        sdk_language: Some("rust".into()),
        ..Default::default()
    },
).await?;

let key = client.create_api_key(
    integration.integration.id.as_deref().unwrap(),
    Some("Rust worker key"),
).await?;

API Methods

send_notification(request)

Send to email, SMS, Slack, Telegram, WhatsApp, WebSocket, or MQTT channels.

list_workspaces()

List workspaces available to the authenticated user.

create_project(workspace_id, name, description)

Create a workspace project.

create_integration(project_id, integration)

Create a platform integration.

create_api_key(integration_id, description)

Create a key scoped to one platform integration.