Skip to main content
POST
/
{agentName}
/
start
Start a service instance
curl --request POST \
  --url https://api.pipecat.daily.co/v1/public/{agentName}/start \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "createDailyRoom": true,
  "dailyRoomProperties": {
    "enable_recording": "cloud"
  },
  "dailyMeetingTokenProperties": {
    "is_owner": true,
    "enable_auto_recording": true
  },
  "enableDefaultIceServers": true,
  "transport": "webrtc",
  "body": {
    "foo": "bar"
  }
}
'
{
  "dailyRoom": "https://cloud-354b1860310a444ba0f528b6a2f467c4.daily.co/qZbK9nyXCDCmQ0zDDZta",
  "dailyToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "sessionId": "639f91d8-d511-4677-a83b-bd7564d5d92f",
  "iceConfig": {
    "iceServers": [
      {
        "urls": [
          "stun:stun.cloudflare.com:3478",
          "turn:turn.cloudflare.com:3478?transport=udp",
          "turn:turn.cloudflare.com:3478?transport=tcp",
          "turns:turn.cloudflare.com:5349?transport=tcp"
        ],
        "username": "g061f2543c0c7aab7d4b087ad407709...",
        "credential": "e6330e0a539d4cfe9cf9f01b9eb2f..."
      }
    ]
  }
}
This endpoint starts a new instance of a deployed agent. You can optionally create a Daily room for the service to connect to.

Authorizations

Authorization
string
header
required

Authentication using a Pipecat Cloud API token.

Path Parameters

agentName
string
required

Name of the agent to start

Body

application/json
createDailyRoom
boolean
default:false

Whether to create a Daily room for the service instance

Example:

true

dailyRoomProperties
object

Optional configuration for the Daily room. Only used when createDailyRoom is true.

See Daily API documentation for supported properties.

Example:
{ "enable_recording": "cloud" }
dailyMeetingTokenProperties
object

Optional configuration for the Daily meeting token. Only used when createDailyRoom is true.

See Daily API documentation for supported properties.

Example:
{
"is_owner": true,
"enable_auto_recording": true
}
enableDefaultIceServers
boolean
default:false

Whether to use the default STUN/TURN ICE servers provided by Pipecat Cloud.

Example:

true

transport
enum<string>

Explicitly specify which transport the bot should use.

Available options:
daily,
webrtc
Example:

"webrtc"

body
object

Arbitrary user data / configuration object to pass to the service instance. Accessible as the first parameter of the bot method or custom entry point.

See the Starting Sessions docs for more information.

Example:
{ "foo": "bar" }

Response

Service started successfully

dailyRoom
string

URL of the created Daily room (if createDailyRoom was set to true)

Example:

"https://cloud-354b1860310a444ba0f528b6a2f467c4.daily.co/qZbK9nyXCDCmQ0zDDZta"

dailyToken
string

Token to access the Daily room (if createDailyRoom was set to true)

Example:

"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

sessionId
string

Session ID for the created session

Example:

"639f91d8-d511-4677-a83b-bd7564d5d92f"

iceConfig
object

ICE server configuration (only included when enableDefaultIceServers is true)

Example:
{
"iceServers": [
{
"urls": [
"stun:stun.cloudflare.com:3478",
"turn:turn.cloudflare.com:3478?transport=udp",
"turn:turn.cloudflare.com:3478?transport=tcp",
"turns:turn.cloudflare.com:5349?transport=tcp"
],
"username": "g061f2543c0c7aab7d4b087ad407709...",
"credential": "e6330e0a539d4cfe9cf9f01b9eb2f..."
}
]
}