Skip to content

Quickstart

This guide walks you through sending your first notification using the Smooven API. By the end, you will have sent a test message and confirmed delivery.

  • A Smooven account (sign up at smooven.io)
  • Your API credentials (App ID and Secret Key) from the dashboard

After signing up, navigate to Settings > API Keys in the Smooven dashboard. You will see two keys:

  • App ID: a public identifier for your project, safe to include in client-side code
  • Secret Key: a private key for server-side API calls. Keep this secure.

Use the /v1/agent/notify endpoint to send your first message. Here is an example using cURL:

Terminal window
curl -X POST https://api.smooven.io/v1/agent/notify \
-H "Authorization: Bearer YOUR_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"channel": "sms",
"to": "+61400000000",
"message": "Hello from Smooven! This is your first test notification."
}'
const response = await fetch('https://api.smooven.io/v1/agent/notify', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_SECRET_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
channel: 'sms',
to: '+61400000000',
message: 'Hello from Smooven! This is your first test notification.',
}),
});
const result = await response.json();
console.log(result);
import requests
response = requests.post(
'https://api.smooven.io/v1/agent/notify',
headers={
'Authorization': 'Bearer YOUR_SECRET_KEY',
'Content-Type': 'application/json',
},
json={
'channel': 'sms',
'to': '+61400000000',
'message': 'Hello from Smooven! This is your first test notification.',
},
)
print(response.json())

A successful response looks like this:

{
"success": true,
"notification_id": "ntf_abc123def456",
"channel_used": "sms",
"status": "delivered",
"timestamp": "2026-03-05T08:00:00Z"
}
FieldDescription
successWhether the request was accepted
notification_idUnique identifier for tracking
channel_usedThe channel Smooven selected for delivery
statusCurrent delivery status
timestampWhen the notification was processed

Instead of specifying a channel, let Smooven pick the best one:

Terminal window
curl -X POST https://api.smooven.io/v1/agent/notify \
-H "Authorization: Bearer YOUR_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"intent": "Remind the user about their appointment tomorrow at 2pm",
"urgency": "normal",
"context": {
"user_id": "user@example.com"
}
}'

Smooven evaluates the recipient’s available channels, device capabilities, preferences, and message urgency, then selects the optimal delivery method automatically.