Skip to content

/players

Players represent the recipients in your system. Each player can have multiple channels associated with them (phone number, device token, email address, etc.).

POST https://api.smooven.io/v1/players/register

GET https://api.smooven.io/v1/players/{player_id}

POST https://api.smooven.io/v1/players/batch

DELETE https://api.smooven.io/v1/players/{player_id}


Creates a new player or updates an existing player’s channel information.

POST /v1/players/register
{
"external_id": "user_123",
"channels": {
"sms": "+61400000000",
"email": "user@example.com",
"push": {
"platform": "android",
"device_token": "fcm_token_here"
}
},
"tags": ["premium", "au-region"],
"preferences": {
"preferred_channel": "push",
"quiet_hours": { "start": "22:00", "end": "07:00", "timezone": "Australia/Sydney" }
}
}
ParameterTypeRequiredDescription
external_idstringYesYour internal user identifier
channelsobjectYesAvailable channels and their addresses
channels.smsstringNoPhone number in E.164 format
channels.emailstringNoEmail address
channels.pushobjectNoPush notification token and platform
tagsarrayNoLabels for segmentation
preferencesobjectNoUser-level delivery preferences
preferences.preferred_channelstringNoDefault channel for this user
preferences.quiet_hoursobjectNoTime window during which notifications are held
{
"success": true,
"player_id": "ply_abc123",
"external_id": "user_123",
"channels_registered": ["sms", "email", "push"],
"created": false
}

Import up to 1000 players in a single request.

POST /v1/players/batch
{
"players": [
{
"external_id": "user_001",
"channels": { "email": "alice@example.com", "sms": "+61400000001" }
},
{
"external_id": "user_002",
"channels": { "email": "bob@example.com" }
}
]
}
{
"success": true,
"imported": 2,
"errors": []
}