list
List AI agent resources in the project.
Response
datalist of objectsRequired
An array of objects containing the list of AI Agent data.
linksobjectRequired
Object containing pagination links
Response Example
Response
1 { 2 "data": [ 3 { 4 "id": "a87db7ed-8ebe-42e4-829f-8ba5a4152f54", 5 "project_id": "99151cf8-9548-4860-ba70-a8de824f3312", 6 "display_name": "Booking Assistant", 7 "type": "ai_agent", 8 "created_at": "2024-05-06T12:20:00Z", 9 "updated_at": "2024-05-06T12:20:00Z", 10 "ai_agent": { 11 "prompt": { 12 "max_tokens": 256, 13 "temperature": 0.7, 14 "top_p": 0.9, 15 "confidence": 0.6, 16 "presence_penalty": 0, 17 "frequency_penalty": 0, 18 "text": "Your name is Franklin and you are taking orders for Franklin's Pizza. Begin by greeting the caller, and ask if they'd like to place an order for pickup or delivery.", 19 "contexts": { 20 "default": { 21 "steps": [ 22 { 23 "name": "Take Pizza order", 24 "step_criteria": "Customer wants to order Pizza", 25 "functions": [ 26 "Take Order", 27 "Confirm Order", 28 "Confirm Address" 29 ], 30 "valid_contexts": [ 31 "Place Order", 32 "Confirm Order" 33 ], 34 "skip_user_turn": true, 35 "end": true, 36 "valid_steps": [ 37 "get order", 38 "confirm order" 39 ], 40 "text": "Your name is Franklin and you are taking orders for Franklin's Pizza." 41 } 42 ], 43 "isolated": true, 44 "enter_fillers": [ 45 { 46 "default": [ 47 "one moment please", 48 "let me check" 49 ] 50 } 51 ], 52 "exit_fillers": [ 53 { 54 "default": [ 55 "one moment please", 56 "let me check" 57 ] 58 } 59 ], 60 "pom": [ 61 { 62 "title": "Customer Service Guidelines", 63 "subsections": [ 64 null 65 ], 66 "numbered": true, 67 "numberedBullets": false, 68 "body": "Welcome customers warmly and assist them with their inquiries.", 69 "bullets": [ 70 "Be polite and professional", 71 "Listen actively to customer concerns", 72 "Provide accurate information" 73 ] 74 } 75 ] 76 } 77 } 78 }, 79 "agent_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6", 80 "name": "My AI Agent", 81 "global_data": { 82 "company_name": "Acme Corp", 83 "support_hours": "9am-5pm EST" 84 }, 85 "hints": [ 86 "pizza", 87 "pepperoni" 88 ], 89 "languages": [ 90 { 91 "name": "French", 92 "code": "fr-FR", 93 "voice": "gcloud.fr-FR-Neural2-B", 94 "model": "arcana", 95 "emotion": "auto", 96 "speed": "auto", 97 "engine": "elevenlabs", 98 "params": { 99 "stability": 1.1, 100 "similarity": 1.1 101 }, 102 "fillers": [ 103 "umm", 104 "let me check" 105 ] 106 } 107 ], 108 "params": { 109 "acknowledge_interruptions": true, 110 "ai_model": "gpt-4o-mini", 111 "ai_name": "assistant", 112 "ai_volume": 0, 113 "app_name": "customer-support-bot", 114 "asr_smart_format": true, 115 "attention_timeout": 30000, 116 "attention_timeout_prompt": "Ask if the user would like you to repeat yourself, or if they need more time to respond.", 117 "asr_diarize": true, 118 "asr_speaker_affinity": true, 119 "audible_debug": false, 120 "audible_latency": false, 121 "background_file": "https://cdn.signalwire.com/default-music/welcome.mp3", 122 "background_file_loops": 5, 123 "background_file_volume": -10, 124 "enable_barge": "complete,partial", 125 "enable_inner_dialog": true, 126 "enable_pause": true, 127 "enable_turn_detection": true, 128 "barge_match_string": "Cancel order", 129 "barge_min_words": 3, 130 "barge_functions": true, 131 "cache_mode": true, 132 "conscience": "Place an order", 133 "convo": [ 134 { 135 "role": "user", 136 "content": "Hello, how can I assist you today?", 137 "lang": "en" 138 } 139 ], 140 "conversation_id": "Conversation ID", 141 "conversation_sliding_window": 20, 142 "debug_webhook_level": 1, 143 "debug_webhook_url": "https://example.com", 144 "debug": true, 145 "direction": "inbound", 146 "digit_terminators": "#", 147 "digit_timeout": 3000, 148 "end_of_speech_timeout": 700, 149 "enable_accounting": true, 150 "enable_thinking": true, 151 "enable_text_normalization": "both", 152 "enable_vision": true, 153 "energy_level": 52, 154 "first_word_timeout": 1000, 155 "function_wait_for_talking": true, 156 "functions_on_no_response": true, 157 "hard_stop_prompt": "Thank you for calling. The maximum call time has been reached. Goodbye!", 158 "hard_stop_time": "30m", 159 "hold_music": "https://cdn.signalwire.com/default-music/welcome.mp3", 160 "hold_on_process": true, 161 "inactivity_timeout": 600000, 162 "inner_dialog_model": "gpt-4.1-nano", 163 "inner_dialog_prompt": "Analyze the conversation and provide insights to help the agent respond better.", 164 "inner_dialog_synced": true, 165 "initial_sleep_ms": 1000, 166 "input_poll_freq": 2000, 167 "interrupt_on_noise": true, 168 "interrupt_prompt": "Inform user that you can't hear anything", 169 "languages_enabled": true, 170 "local_tz": "America/Ensenada", 171 "llm_diarize_aware": true, 172 "max_emotion": 15, 173 "max_response_tokens": 1024, 174 "openai_asr_engine": "nova-3", 175 "outbound_attention_timeout": 120000, 176 "persist_global_data": true, 177 "pom_format": "markdown", 178 "save_conversation": true, 179 "speech_event_timeout": 1400, 180 "speech_gen_quick_stops": 3, 181 "speech_timeout": 60000, 182 "speak_when_spoken_to": true, 183 "start_paused": true, 184 "static_greeting": "Hello! Welcome to our customer service. How can I help you today?", 185 "static_greeting_no_barge": true, 186 "summary_mode": "string", 187 "swaig_allow_settings": true, 188 "swaig_allow_swml": true, 189 "swaig_post_conversation": true, 190 "swaig_set_global_data": true, 191 "swaig_post_swml_vars": true, 192 "thinking_model": "gpt-4.1-mini", 193 "transparent_barge": true, 194 "transparent_barge_max_time": 3000, 195 "transfer_summary": true, 196 "turn_detection_timeout": 250, 197 "tts_number_format": "international", 198 "verbose_logs": true, 199 "video_listening_file": "https://example.com/listening.mp4", 200 "video_idle_file": "https://example.com/idle.mp4", 201 "video_talking_file": "https://example.com/talking.mp4", 202 "vision_model": "gpt-4o-mini", 203 "vad_config": "50:20", 204 "wait_for_user": true, 205 "wake_prefix": "hey", 206 "eleven_labs_stability": 0.5, 207 "eleven_labs_similarity": 0.75 208 }, 209 "post_prompt": { 210 "max_tokens": 256, 211 "temperature": 0.7, 212 "top_p": 0.9, 213 "confidence": 0.6, 214 "presence_penalty": 0, 215 "frequency_penalty": 0, 216 "text": "Summarize the conversation and provide any follow-up action items." 217 }, 218 "post_prompt_url": "username:password@https://example.com", 219 "pronounce": [ 220 { 221 "replace": "pizza", 222 "with": "pissa", 223 "ignore_case": true 224 } 225 ], 226 "SWAIG": { 227 "defaults": { 228 "web_hook_url": "username:password@https://example.com" 229 }, 230 "mcp_servers": [ 231 { 232 "url": "https://mcp.example.com/mcp", 233 "headers": { 234 "Authorization": "Bearer abc123" 235 }, 236 "resources": true, 237 "resource_vars": { 238 "customer_id": "cust_12345" 239 } 240 } 241 ], 242 "native_functions": [ 243 "check_time" 244 ], 245 "includes": [ 246 { 247 "functions": [ 248 "transfer call", 249 "notify kitchen" 250 ], 251 "url": "username:password@https://example.com", 252 "meta_data": { 253 "customer_id": "cust_123", 254 "session_type": "support" 255 } 256 } 257 ], 258 "functions": [ 259 { 260 "description": "Get the weather information", 261 "purpose": "Get the weather information", 262 "parameters": { 263 "type": "object", 264 "properties": {}, 265 "required": [ 266 "name1", 267 "name2" 268 ] 269 }, 270 "fillers": { 271 "default": [ 272 "one moment please", 273 "let me check" 274 ] 275 }, 276 "argument": { 277 "type": "object", 278 "properties": {}, 279 "required": [ 280 "name1", 281 "name2" 282 ] 283 }, 284 "active": true, 285 "meta_data": { 286 "api_key": "key_123", 287 "endpoint": "https://api.example.com" 288 }, 289 "meta_data_token": "my-function-scope", 290 "data_map": { 291 "output": { 292 "response": "Order placed", 293 "action": [ 294 { 295 "change_context": "sales" 296 } 297 ] 298 }, 299 "expressions": [ 300 { 301 "string": "I want a refund", 302 "pattern": "refund|return|money back", 303 "output": { 304 "response": "Order placed", 305 "action": [ 306 { 307 "change_context": "sales" 308 } 309 ] 310 } 311 } 312 ], 313 "webhooks": [ 314 { 315 "expressions": [ 316 { 317 "string": "I want a refund", 318 "pattern": "refund|return|money back", 319 "output": { 320 "response": "Order placed", 321 "action": [ 322 { 323 "SWML": { 324 "version": {}, 325 "sections": {} 326 }, 327 "transfer": true 328 } 329 ] 330 } 331 } 332 ], 333 "error_keys": "failed", 334 "url": "https://example.com", 335 "foreach": { 336 "input_key": "success", 337 "output_key": "deliverer", 338 "max": 5, 339 "append": "title: ${this.title}, contact: ${this.phone}" 340 }, 341 "headers": { 342 "Content-Type": "application/json", 343 "X-API-Key": "your-api-key" 344 }, 345 "method": "POST", 346 "input_args_as_params": true, 347 "params": { 348 "account_id": "acc_123", 349 "include_details": true 350 }, 351 "require_args": [ 352 "order_id", 353 "customer_email" 354 ], 355 "output": { 356 "response": "Order placed", 357 "action": [ 358 { 359 "change_context": "sales" 360 } 361 ] 362 } 363 } 364 ] 365 }, 366 "skip_fillers": true, 367 "web_hook_url": "username:password:https://statuscallback.com", 368 "wait_file": "https://cdn.signalwire.com/default-music/welcome.mp3", 369 "wait_file_loops": 5, 370 "wait_for_fillers": true, 371 "function": "get_weather" 372 } 373 ], 374 "internal_fillers": { 375 "hangup": { 376 "default": [ 377 "one moment please", 378 "let me check" 379 ] 380 }, 381 "check_time": { 382 "default": [ 383 "one moment please", 384 "let me check" 385 ] 386 }, 387 "wait_for_user": { 388 "default": [ 389 "one moment please", 390 "let me check" 391 ] 392 }, 393 "wait_seconds": { 394 "default": [ 395 "one moment please", 396 "let me check" 397 ] 398 }, 399 "adjust_response_latency": { 400 "default": [ 401 "one moment please", 402 "let me check" 403 ] 404 }, 405 "next_step": { 406 "default": [ 407 "one moment please", 408 "let me check" 409 ] 410 }, 411 "change_context": { 412 "default": [ 413 "one moment please", 414 "let me check" 415 ] 416 }, 417 "get_visual_input": { 418 "default": [ 419 "one moment please", 420 "let me check" 421 ] 422 }, 423 "get_ideal_strategy": { 424 "default": [ 425 "one moment please", 426 "let me check" 427 ] 428 } 429 } 430 } 431 } 432 } 433 ], 434 "links": { 435 "self": "https://example.signalwire.com/api/fabric/resources/ai_agents?page_number=0&page_size=50&type=ai_agent", 436 "first": "https://example.signalwire.com/api/fabric/resources/ai_agents?page_number=0&page_size=50&type=ai_agent", 437 "next": "https://example.signalwire.com/api/fabric/resources/ai_agents?page_number=1&page_size=50&page_token=PAbff61159-faab-48b3-959a-3021a8f5beca&type=ai_agent", 438 "prev": "https://example.signalwire.com/api/fabric/resources/ai_agents?page_number=0&page_size=50&page_token=PAbff61159-faab-48b3-959a-3021a8f5beca&type=ai_agent" 439 } 440 }
Example
1 from signalwire.rest import RestClient 2 3 client = RestClient( 4 project="your-project-id", 5 token="your-api-token", 6 host="your-space.signalwire.com", 7 ) 8 9 response = client.fabric.ai_agents.list() 10 for agent in response.get("data", []): 11 print(f"{agent['display_name']}: {agent['id']}")