Skip to main content

Endpoint

PATCH /api/v1/bots/{object_id}

Authentication

Requires API key authentication via the Authorization header.
Authorization
string
required
Your API key in the format: Token YOUR_API_KEY_HERE
Content-Type
string
required
Must be application/json

Path Parameters

object_id
string
required
The unique identifier for the bot.Example: bot_xxxxxxxxxxx

Request Body

The join_at, meeting_url, bot_name, bot_image, and recording_settings fields can only be updated when the bot is in the scheduled state. The metadata field can be updated at any time.
join_at
string
The time the bot should join the meeting. Can only be updated for scheduled bots.Format: ISO 8601 datetime (e.g., 2025-06-13T12:00:00Z)
meeting_url
string
The URL of the meeting to join. Can only be updated for scheduled bots.
bot_name
string
The name of the bot. Can only be updated for scheduled bots.
bot_image
object
The image for the bot’s profile picture. Can only be updated for scheduled bots.
type
string
required
Image content type. Currently only image/png is supported.
data
string
required
Base64 encoded PNG image data.
metadata
object
JSON object containing custom metadata. Can be updated at any time.Example: {"customer_id": "abc123", "status": "active"}
recording_settings
object
The settings for the bot’s recording. Can only be updated for scheduled bots.
format
string
Format: mp4, mp3, or none.
view
string
View: speaker_view, gallery_view, or speaker_view_no_sidebar.
resolution
string
Resolution: 1080p or 720p.

Response

Returns the updated bot object.
id
string
Unique identifier for the bot.
meeting_url
string
The URL of the meeting the bot will join.
state
string
Current state of the bot.
events
array
Array of events that have occurred for this bot.
transcription_state
string
Current transcription state.
recording_state
string
Current recording state.
join_at
string
ISO 8601 timestamp when the bot will join the meeting.
deduplication_key
string
Deduplication key for the bot.
metadata
object
Custom metadata associated with the bot.

Example Request - Update join_at for scheduled bot

curl -X PATCH 'https://api.attendee.dev/api/v1/bots/bot_xxxxxxxxxxx' \
  -H 'Authorization: Token YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "join_at": "2025-06-13T12:00:00Z"
  }'

Example Request - Update name and image

curl -X PATCH 'https://api.attendee.dev/api/v1/bots/bot_xxxxxxxxxxx' \
  -H 'Authorization: Token YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "bot_name": "My Updated Bot",
    "bot_image": {
      "type": "image/png",
      "data": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8z8BQDwAEhQGAhKmMIQAAAABJRU5ErkJggg=="
    }
  }'

Example Request - Update metadata

curl -X PATCH 'https://api.attendee.dev/api/v1/bots/bot_xxxxxxxxxxx' \
  -H 'Authorization: Token YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "metadata": {
      "customer_id": "abc123",
      "status": "updated"
    }
  }'

Example Response

{
  "id": "bot_xxxxxxxxxxx",
  "meeting_url": "https://zoom.us/j/123?pwd=456",
  "state": "scheduled",
  "events": [
    {
      "type": "bot_created",
      "sub_type": null,
      "created_at": "2025-06-12T10:00:00Z"
    }
  ],
  "transcription_state": "not_started",
  "recording_state": "not_started",
  "join_at": "2025-06-13T12:00:00Z",
  "deduplication_key": null,
  "metadata": {
    "customer_id": "abc123",
    "status": "updated"
  }
}

Error Codes

  • 200 - Bot updated successfully
  • 400 - Invalid input or bot cannot be updated (e.g., trying to update join_at for a bot not in scheduled state)
  • 401 - Invalid or missing API key
  • 404 - Bot not found

Build docs developers (and LLMs) love