Manage Rooms
Manage room lifecycle including queries, updates, stream control, and deletion operations for interactive livestreaming.Querying Rooms
Get Room by ID
Retrieve a single room with real-time updates:Query Multiple Rooms
Get rooms with filtering and sorting:Query Live Rooms Only
Get currently broadcasting rooms:Query Parameters
statuses
statuses
Type:
Required: No
Values:
AmityRoomStatus[]Required: No
Values:
idle | live | waitingReconnect | ended | recordedFilter rooms by their current status. Pass multiple statuses to match any.types
types
Type:
Required: No
Values:
AmityRoomType[]Required: No
Values:
coHostsFilter rooms by type.isDeleted
isDeleted
Type:
Required: No
Default:
booleanRequired: No
Default:
falseInclude or exclude deleted rooms.sortBy
sortBy
Type:
Required: No
Values:
Default:
AmityRoomSortOptionRequired: No
Values:
firstCreated | lastCreatedDefault:
firstCreatedSort rooms by creation date.Updating Rooms
Update room details (creator only):Updatable Fields: Only title, description, thumbnailFileId, metadata, and channelEnabled can be updated. Participants and room type cannot be changed after creation.
Stopping a Stream
Stop an active broadcast:Getting Recorded URLs
Retrieve recorded stream URLs after broadcast ends:Recording Availability: Recordings are available after the room status changes to “recorded”. This may take some time after the stream ends.
Common Patterns
Monitor Room Status
Track room status changes in real-time:Display Live Rooms List
Show currently active broadcasts:Stream Lifecycle Management
Complete stream management workflow:Best Practices
Status Monitoring
Status Monitoring
Monitor room status for better UX:
- Subscribe to room updates for real-time status
- Handle all status transitions appropriately
- Show appropriate UI for each status
- Auto-reconnect on temporary disconnections
Stream Control
Stream Control
Implement proper stream controls:
- Validate room status before starting/stopping
- Provide clear feedback to users
- Handle network interruptions gracefully
- Implement timeout mechanisms
Recording Management
Recording Management
Manage recordings effectively:
- Poll for recordings after stream ends
- Store recording URLs for playback
- Implement retry logic for unavailable recordings
- Clean up old recordings
Resource Management
Resource Management
Optimize resource usage:
- Unsubscribe from live collections when not needed
- Delete ended rooms after recording retrieval
- Limit concurrent live room queries
- Cache frequently accessed room data