Back to Docs

Video API

Video conferencing, rooms, and recording

100 Participants

Per room

Recording

Cloud recording

Screen Share

Built-in

Encrypted

End-to-end

Dual-Key Authentication

API KeyPermanent

X-Smsly-Key-Id: sk_live_xxx

SDK KeyRotatable

X-SMSLY-SDK-KEY: sdk_live_xxx

Quick Start

Python
from smsly import SMSly

# === DUAL KEY SECURITY ===
# Two keys required (both can be in .env or embedded):
# 1. API Key - for authentication
# 2. SDK Key - for SDK validation

client = SMSly(
    api_key="setup_api_your_key",   # From dashboard
    sdk_key="setup_sdk_your_key"    # From dashboard
)

# Create a video room
room = client.video.create_room(
    name="Weekly Team Meeting",
    max_participants=20,
    record=True
)
print(f"Room ID: {room.id}")
print(f"Room URL: {room.url}")

# Generate join token for participant
token = client.video.join_token(
    room_id=room.id,
    participant_name="John Doe",
    role="host"  # or "participant"
)
print(f"Join URL: {token.join_url}")

# Get room details
room_info = client.video.get_room(room.id)
print(f"Participants: {room_info.participant_count}")

# End the room
client.video.end_room(room.id)

# Get recordings
recordings = client.video.get_recordings(room.id)
for rec in recordings:
    print(f"Recording: {rec.download_url}")

API Endpoints

POST/v1/video/roomsCreate video room
POST/v1/video/rooms/:id/joinGenerate join token
GET/v1/video/rooms/:idGet room details
POST/v1/video/rooms/:id/endEnd room session
GET/v1/video/rooms/:id/recordingsGet recordings

Ready to add video calls?

Get API Keys