Updates the configuration of a bot that has not yet joined the meeting. This is useful for modifying scheduled bots before they join.
Method Signature
bot.updateScheduledBot(params: UpdateScheduledParams): Promise<BotDetails>
Parameters
The unique identifier of the bot to update
Update the meeting URL the bot should join
Update the display name for the bot
Update when the bot should join the meeting
Update real-time transcription configurationWebhook URL to receive transcription events
Whether to send partial transcription results
Enable enhanced speaker identification
Update real-time media streaming configuration
Update transcription processing configurationTranscription provider to use
Update recording mode: “speaker_view”, “gallery_view”, or “audio_only”
Update additional recording configuration
Update the bot’s video appearance configuration
Response
Returns the updated bot details with all current configuration.
Unique identifier for the bot
Updated meeting information
Current status of the bot
Updated ISO 8601 timestamp for when the bot will join
Updated display name of the bot
Example
import { Recall } from '@recall.ai/sdk';
const client = new Recall({
apiKey: 'your-api-key',
region: 'us-west-2'
});
// Create a scheduled bot
const joinTime = new Date();
joinTime.setHours(joinTime.getHours() + 2);
const bot = await client.bot.create({
meeting_url: 'https://zoom.us/j/123456789',
join_at: joinTime
});
// Update the join time
const newJoinTime = new Date();
newJoinTime.setHours(newJoinTime.getHours() + 1);
const updatedBot = await client.bot.updateScheduledBot({
id: bot.id,
join_at: newJoinTime
});
console.log(`Updated join time: ${updatedBot.join_at}`);
Example: Update Bot Name
const updatedBot = await client.bot.updateScheduledBot({
id: 'bot_1234567890',
bot_name: 'Updated Bot Name'
});
console.log(`Bot name updated to: ${updatedBot.bot_name}`);
Example: Update Transcription Settings
const updatedBot = await client.bot.updateScheduledBot({
id: 'bot_1234567890',
real_time_transcription: {
destination_url: 'https://new-webhook.com/transcription',
enhanced_diarization: true,
partial_results: false
},
transcription_options: {
provider: 'deepgram'
}
});
console.log('Transcription settings updated');
Example: Change Meeting URL
// Update bot to join a different meeting
const updatedBot = await client.bot.updateScheduledBot({
id: 'bot_1234567890',
meeting_url: 'https://meet.google.com/new-meeting-code'
});
console.log(`Updated meeting platform: ${updatedBot.meeting_url.platform}`);
Notes
- This method can only update bots that haven’t joined yet (status is
ready or similar early states)
- Once a bot has joined a meeting, most configuration cannot be changed
- All update parameters are optional - only provide the fields you want to change