---
title: "List Resources"
method: GET
path: "/api/fabric/resources"
tags: ["Resources"]
---

# List Resources

`GET /api/fabric/resources`

A list of Fabric Resources

#### Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_, _Messaging_, _Fax_, or _Video_.

[Learn more about API scopes](/docs/platform/your-signalwire-api-space).

## Response `200`

The request has succeeded.

- ResourceListResponse
  - `data` ResourceResponse[], required — An array of objects that contain a list of Resource data
    - union
      - ResourceResponseAI
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'ai_agent', required — The type of Resource
        - `ai_agent` AIAgent, required — An AI Agent configuration that extends the SWML AI object with additional API-specific properties.
          - `global_data` SWMLCallingGlobalData — A key-value object for data that persists throughout an AI or sidecar session.
          - `hints` union[] — Hints help the AI agent understand certain words or phrases better. Words that can commonly be misinterpreted can be added to the hints to help the AI speak more accurately.
            - union
              - …
          - `languages` SWMLCallingLanguages[] — An array of JSON objects defining supported languages in the conversation.
            - union
              - …
          - `params` SWMLCallingAIParams
            - `acknowledge_interruptions` boolean — Instructs the agent to acknowledge crosstalk and confirm user input when the user speaks over the agent.
            - `ai_model` union — The model to use for the AI. Allowed values are `gpt-4o-mini`, `gpt-4.1-mini`, and `gpt-4.1-nano`.
              - …
            - `ai_name` string — Sets the name the AI agent responds to for wake/activation purposes. When using `enable_pause`, `start_paused`, or `speak_when_spoken_to`, the user must say this name to get the agent's attention. The name matching is case-insensitive.
            - `ai_volume` integer — Adjust the volume of the AI. Allowed values from `-50` - `50`. **Default:** `0`.
            - `app_name` string — A custom identifier for the AI application instance. This name is included in webhook payloads, allowing backend systems to identify which AI configuration made the request.
            - `asr_smart_format` boolean — If true, enables smart formatting in ASR (Automatic Speech Recognition). This improves the formatting of numbers, dates, times, and other entities in the transcript. **Default:** `false`
            - `attention_timeout` union — Amount of time, in ms, to wait before prompting the user to respond. Allowed values from `10,000` - `600,000`. Set to `0` to disable. **Default:** `5000` ms (note: user-configurable values must be `0` or within the `10,000` - `600,000` range).
              - …
            - `attention_timeout_prompt` string — A custom prompt that is fed into the AI when the attention_timeout is reached.
            - `asr_diarize` boolean — If true, enables speaker diarization in ASR (Automatic Speech Recognition). This will break up the transcript into chunks, with each chunk containing a unique identity (e.g speaker1, speaker2, etc.) and the text they spoke. **Default:** `false`
            - `asr_speaker_affinity` boolean — If true, will force the AI Agent to only respond to the speaker who reesponds to the AI Agent first. Any other speaker will be ignored. **Default:** `false`
            - `audible_debug` boolean — If `true`, the AI will announce the function that is being executed on the call. **Default:** `false`.
            - `audible_latency` boolean — If `true`, the AI will announce latency information during the call. Useful for debugging. **Default:** `false`.
            - `background_file` string, uri — URL of audio file to play in the background while AI plays in foreground.
            - `background_file_loops` integer, nullable — Maximum number of times to loop playing the background file. `undefined` means loop indefinitely.
            - `background_file_volume` integer — Defines background_file volume within a range of `-50` to `50`. **Default:** `0`.
            - `enable_barge` union — Controls the barge behavior. Allowed values are `"complete"`, `"partial"`, `"all"`, or boolean. **Default:** `"complete,partial"`
              - …
            - `enable_inner_dialog` boolean — Enables the inner dialog feature, which runs a separate AI process in the background that analyzes the conversation and provides real-time insights to the main AI agent. This gives the agent a form of "internal thought process" that can help it make better decisions.
            - `enable_pause` boolean — Enables the pause/resume functionality for the AI agent. When enabled, a `pause_conversation` function is automatically added that the AI can call when the user says things like "hold on", "wait", or "pause". While paused, the agent stops responding until the user speaks the agent's name (set via `ai_name`) to resume. Cannot be used together with `speak_when_spoken_to`.
            - `enable_turn_detection` boolean — Enables intelligent turn detection that monitors partial speech transcripts for sentence-ending punctuation. When detected, the system can proactively finalize the speech recognition, reducing latency before the AI responds. Works with `turn_detection_timeout`.
            - `barge_match_string` string — Takes a string, including a regular expression, defining barge behavior. For example, this param can direct the AI to stop when the word 'hippopotamus' is input.
            - `barge_min_words` integer — Defines the number of words that must be input before triggering barge behavior, in a range of `1-99`.
            - `barge_functions` boolean — If `true`, allows functions to be executed while the AI is being interrupted. **Default:** `true`.
            - `cache_mode` boolean — If `true`, enables response caching for improved performance. **Default:** `false`.
            - `conscience` string — Sets the prompt which binds the agent to its purpose.
            - `convo` SWMLCallingConversationMessage[] — Injects pre-existing conversation history into the AI session at startup. This allows you to seed the AI agent with context from a previous conversation or provide example interactions.
              - …
            - `conversation_id` string — Used by `check_for_input` and `save_conversation` to identify an individual conversation.
            - `conversation_sliding_window` integer — Sets the size of the sliding window for conversation history. This limits how much conversation history is sent to the AI model.
            - `debug_webhook_level` integer — Enables debugging to the set URL. Allowed values from `0` - `2`. Default is `1` if url is set.
            - `debug_webhook_url` string, uri — Each interaction between the AI and end user is posted in real time to the established URL.
            - `debug` union — Enables debug mode for the AI session. When enabled, additional diagnostic information is logged including turn detection events, speech processing details, and internal state changes.
              - …
            - `direction` 'inbound' | 'outbound'
            - `digit_terminators` string — DTMF digit, as a string, to signal the end of input (ex: '#')
            - `digit_timeout` integer — Time, in ms, at the end of digit input to detect end of input. Allowed values from `0` - `30,000`. **Default:** `3000` ms.
            - `end_of_speech_timeout` integer — Amount of silence, in ms, at the end of an utterance to detect end of speech. Allowed values from `250` - `10,000`. **Default:** `700` ms.
            - `enable_accounting` boolean — If `true`, enables usage accounting. The default is `false`.
            - `enable_thinking` boolean — Enables thinking output for the AI Agent. When set to `true`, the AI Agent will be able to utilize thinking capabilities. **Important**: This may introduce a little bit of latency as the AI will use an additional turn in the conversation to think about the query.
            - `enable_text_normalization` 'heard' | 'spoken' | 'both' | 'true' | 'on' | 'false' | 'off' | 'none' — Converts numbers, currency, dates, and similar values between their written and spoken forms so the AI understands callers more accurately and speaks its responses more naturally. `heard` converts what the caller says into written form before the AI reads it (e.g. "twenty three dollars" becomes "$23"). `spoken` converts the AI's written response into spoken form before it is read aloud (e.g. "$23" becomes "twenty three dollars"). `both` applies both directions. Set to `false`, `off`, or `none` to turn it off; `true` and `on` are aliases for `both`. Text normalization adapts automatically to the language being spoken; if it isn't available for that language, the affected direction is skipped and the conversation continues. **Default:** `both`.
            - `auto_correct` boolean — Cleans up the transcription of the caller's speech before the AI reads it — converting spoken numbers to digits, formatting addresses and phone numbers, and fixing obvious mishearings — without changing the meaning. Cannot be used together with `enable_text_normalization`, which is on by default: set `enable_text_normalization` to `"off"` to use `auto_correct`; otherwise `auto_correct` has no effect. When used alongside `redact_prompt`, cleanup and redaction happen together in a single step, which keeps responses fast. **Default:** `false`.
            - `redact_prompt` string — A plain-language description of sensitive content to redact from everything the platform records or transmits about the call — logs, events, webhook payloads, the call timeline, and the post-conversation `call_log` and `raw_call_log`. For example: `"credit card numbers, social security numbers, and full names"`. Redacted content is replaced with `----`. Set this parameter to enable redaction; omit it to leave redaction off. The caller still hears the content in full, and the AI still receives the real text — redaction protects what is recorded and transmitted, not what the AI processes. Redaction can occasionally miss content, so treat it as a safeguard for your logs and integrations rather than an absolute guarantee.
            - `enable_vision` boolean — Enables visual input processing for the AI Agent. When set to `true`, the AI Agent will be able to utilize visual processing capabilities, while leveraging the `get_visual_input` function.
            - `energy_level` number — Amount of energy necessary for bot to hear you (in dB). Allowed values from `0.0` - `100.0`. **Default:** `52.0` dB.
            - `first_word_timeout` integer — Amount of time, in ms, to wait for the first word after speech is detected. Allowed values from `0` - `10,000`. **Default:** `1000` ms.
            - `function_wait_for_talking` boolean — If `true`, the AI will wait for any `filler` to finish playing before executing a function. If `false`, the AI will execute a function asynchronously as the `filler` plays. **Default:** `false`.
            - `functions_on_no_response` boolean — If `true`, functions can be executed when there is no user response after a timeout. **Default:** `false`.
            - `hard_stop_prompt` string — A final prompt that is fed into the AI when the `hard_stop_time` is reached.
            - `hard_stop_time` string — Specifies the maximum duration fopr the AI Agent to remain active before it exists the session. After the timeout, the AI will stop responding, and will proceed with the next SWML instruction. **Time Format:** - Seconds Format: `30s` - Minutes Format: `2m` - Hours Format: `1h` - Combined Format: `1h45m30s`
            - `hold_music` string, uri — A URL for the hold music to play, accepting WAV, mp3, and FreeSWITCH tone_stream.
            - `hold_on_process` boolean — Enables hold music during SWAIG processing.
            - `inactivity_timeout` integer — Amount of time, in ms, to wait before exiting the app due to inactivity. Allowed values from `10,000` - `3,600,000`. **Default:** `600000` ms (10 minutes).
            - `inner_dialog_model` union — Specifies the AI model to use for the inner dialog feature. Can be set to a different (often smaller/faster) model than the main conversation model. Only used when `enable_inner_dialog` is `true`.
              - …
            - `inner_dialog_prompt` string — The system prompt that guides the inner dialog AI's behavior. This prompt shapes how the background AI analyzes the conversation and what kind of insights it provides to the main agent. Only used when `enable_inner_dialog` is `true`.
            - `inner_dialog_synced` boolean — When enabled, synchronizes the inner dialog with the main conversation flow. This ensures the inner dialog AI waits for the main conversation turn to complete before providing its analysis, rather than running fully asynchronously. Only used when `enable_inner_dialog` is `true`.
            - `initial_sleep_ms` integer — Amount of time, in ms, to wait before starting the conversation. Allowed values from `0` - `300,000`.
            - `input_poll_freq` integer — Check for input function with check_for_input. Example use case: Feeding an inbound SMS to AI on a voice call, eg., for collecting an email address or other complex information. Allowed values from `1000` to `10000` ms. **Default:** `2000` ms.
            - `interrupt_on_noise` boolean — When enabled, barges agent upon any sound interruption longer than 1 second.
            - `interrupt_prompt` string — Provide a prompt for the agent to handle crosstalk.
            - `languages_enabled` boolean — Allows multilingualism when `true`.
            - `local_tz` string — The local timezone setting for the AI. Value should use `IANA TZ ID`
            - `llm_diarize_aware` boolean — If true, the AI Agent will be involved with the diarization process. Users can state who they are at the start of the conversation and the AI Agent will be able to correctly identify them when they are speaking later in the conversation. **Default:** `false`
            - `max_emotion` integer — Sets the maximum emotion intensity for the AI voice. Allowed values from `1` - `30`. **Default:** `30`.
            - `max_response_tokens` integer — Sets the maximum number of tokens the AI model can generate in a single response. Lower values produce shorter responses and reduce latency.
            - `openai_asr_engine` string — The ASR (Automatic Speech Recognition) engine to use. Common values include `deepgram:nova-2` and `deepgram:nova-3`.
            - `outbound_attention_timeout` integer — Sets a time duration for the outbound call recipient to respond to the AI agent before timeout, in a range from `10000` to `600000`. **Default:** `120000` ms (2 minutes).
            - `persist_global_data` boolean — When enabled, the `global_data` object is automatically saved to a channel variable and restored when a new AI session starts on the same call. This allows data to persist across multiple AI agent invocations within the same call.
            - `pom_format` 'markdown' | 'xml' — Specifies the output format for structured prompts when using the `pom` array in prompt definitions. Valid values are `markdown` or `xml`.
            - `save_conversation` boolean — Send a summary of the conversation after the call ends. This requires a `post_url` to be set in the ai parameters and the `conversation_id` defined below. This eliminates the need for a `post_prompt` in the ai parameters.
            - `speech_event_timeout` integer — Amount of time, in ms, to wait for a speech event. Allowed values from `0` - `10,000`. **Default:** `1400` ms.
            - `speech_gen_quick_stops` integer — Number of quick stops to generate for speech. Allowed values from `0` - `10`. **Default:** `3`.
            - `speech_timeout` integer — Overall speech timeout, in ms. Allowed values from `0` - `600,000`. **Default:** `60000` ms.
            - `speak_when_spoken_to` boolean — When enabled, the AI agent remains silent until directly addressed by name (using `ai_name`). This creates a "push-to-talk" style interaction where the agent only responds when explicitly called upon, useful for scenarios where the agent should listen but not interrupt. Cannot be used together with `enable_pause`.
            - `start_paused` boolean — When enabled, the AI agent starts in a paused state and will not respond until the user speaks the agent's name (set via `ai_name`). Automatically enables `enable_pause`. This is useful for scenarios where you want the agent to wait for explicit activation.
            - `static_greeting` string — The static greeting to play when the call is answered. This will always play at the beginning of the call.
            - `static_greeting_no_barge` boolean — If `true`, the static greeting will not be interrupted by the user if they speak over the greeting. If `false`, the static greeting can be interrupted by the user if they speak over the greeting.
            - `summary_mode` 'string' | 'original' — Defines the mode for summary generation. Allowed values are `"string"` and `"original"`.
            - `swaig_allow_settings` boolean — Allows tweaking any of the indicated settings, such as `barge_match_string`, using the returned SWML from the SWAIG function. **Default:** `true`.
            - `swaig_allow_swml` boolean — Allows your SWAIG to return SWML to be executed. **Default:** `true`.
            - `swaig_post_conversation` boolean — Post entire conversation to any SWAIG call.
            - `swaig_set_global_data` boolean — Allows SWAIG to set global data that persists across calls. **Default:** `true`.
            - `swaig_post_swml_vars` union — Controls whether SWML variables are included in SWAIG function webhook payloads. When set to `true`, all SWML variables are posted. When set to an array of strings, only the specified variable names are included.
              - …
            - `thinking_model` union — The model to use for the AI's thinking capabilities — for example `gpt-4o-mini`, `gpt-4.1-mini`, or `gpt-4.1-nano`. A value that is not a recognized model is ignored, and the agent's main model is used instead.
              - …
            - `utility_model` union — The AI model used for lightweight background tasks such as redaction (`redact_prompt`) and transcription cleanup (`auto_correct`). Choose a small, fast model, such as `gpt-4o-mini`, `gpt-4.1-mini`, or `gpt-4.1-nano` — these tasks run while the caller is waiting for a response. A value that is not a recognized model is ignored, and the agent's main model is used instead. **Default:** the value of the `ai_model` parameter.
              - …
            - `transparent_barge` boolean — When enabled, the AI will not respond to the user's input when the user is speaking over the agent. The agent will wait for the user to finish speaking before responding. Additionally, any attempt the LLM makes to barge will be ignored and scraped from the conversation logs. **Default:** `true`.
            - `transparent_barge_max_time` integer — Maximum time, in ms, for transparent barge mode. Allowed values from `0` - `60,000`. **Default:** `3000` ms.
            - `transfer_summary` boolean — Pass a summary of a conversation from one AI agent to another. For example, transfer a call summary between support agents in two departments.
            - `turn_detection_timeout` integer — Time in milliseconds to wait after detecting a potential end-of-turn before finalizing speech recognition. A shorter timeout results in faster response times but may cut off the user if they pause mid-sentence. Set to `0` to finalize immediately. Only used when `enable_turn_detection` is `true`.
            - `tts_number_format` 'international' | 'national' — The format for the AI agent to reference phone numbers. Allowed values are `international` and `national`. **Default:** `international`. **Example:** - `international`: `+12345678901` - `national`: `(234) 567-8901`
            - `verbose_logs` boolean — Enable verbose logging.
            - `video_listening_file` string, uri — URL of a video file to play when AI is listening to the user speak. Only works for calls that support video.
            - `video_idle_file` string, uri — URL of a video file to play when AI is idle. Only works for calls that support video.
            - `video_talking_file` string, uri — URL of a video file to play when AI is talking. Only works for calls that support video.
            - `vision_model` union — The model to use for the AI's vision capabilities. Allowed values are `gpt-4o-mini`, `gpt-4.1-mini`, and `gpt-4.1-nano`.
              - …
            - `vad_config` string — Configures Silero Voice Activity Detection (VAD) settings. Format: `"threshold"` or `"threshold:frame_ms"`. The threshold (0-100) sets sensitivity for detecting voice activity. The optional frame_ms (16-40) sets frame duration in milliseconds.
            - `wait_for_user` boolean — When false, AI agent will initialize dialogue after call is setup. When true, agent will wait for the user to speak first.
            - `wake_prefix` string — Specifies an additional prefix that must be spoken along with the agent's name (`ai_name`) to wake the agent from a paused state. For example, if `ai_name` is "computer" and `wake_prefix` is "hey", the user would need to say "hey computer" to activate the agent.
            - `eleven_labs_stability` number — The stability slider determines how stable the voice is and the randomness between each generation. Lowering this slider introduces a broader emotional range for the voice.
            - `eleven_labs_similarity` number — The similarity slider dictates how closely the AI should adhere to the original voice when attempting to replicate it. The higher the similarity, the closer the AI will sound to the original voice.
          - `post_prompt` union
            - SWMLCallingAIPostPromptText
              - …
            - SWMLCallingAIPostPromptPom
              - …
          - `post_prompt_url` string, uri — The URL to which to send status callbacks and reports. Authentication can also be set in the url in the format of `username:password@url`.
          - `pronounce` SWMLCallingPronounce[] — An array of JSON objects to clarify the AI's pronunciation of words or expressions.
            - `replace` string, required — The expression to replace.
            - `with` string, required — The phonetic spelling of the expression.
            - `ignore_case` boolean — Whether the pronunciation replacement should ignore case. **Default:** `true`.
          - `prompt` union, required
            - SWMLCallingAIPromptText
              - …
            - SWMLCallingAIPromptPom
              - …
          - `SWAIG` SWMLCallingSWAIG
            - `defaults` SWMLCallingSWAIGDefaults
              - …
            - `mcp_servers` SWMLCallingMCPServer[] — An array of MCP (Model Context Protocol) servers whose tools and resources are made available to the AI agent. Each server's tools are discovered when the agent starts and registered as callable functions.
              - …
            - `native_functions` SWMLCallingSWAIGNativeFunction[] — Prebuilt functions the AI agent is able to call from this list of available native functions
            - `includes` SWMLCallingSWAIGIncludes[] — An array of objects to include remote function signatures. This allows you to include functions that are defined in a remote location. The object fields are `url` to specify where the remote functions are defined and `functions` which is an array of the function names as strings.
              - …
            - `functions` SWMLCallingSWAIGFunction[] — An array of JSON objects to define functions that can be executed during the interaction with the AI. Default is not set.
              - …
            - `internal_fillers` SWMLCallingSWAIGInternalFiller
              - …
          - `agent_id` string, uuid, required — Universal Unique Identifier.
          - `name` string, required — Name of the AI Agent.
      - ResourceResponseCallFlow
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'call_flow', required — The type of Resource
        - `call_flow` CallFlow, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `title` string, required — The name of the Call Flow
          - `flow_data` object — Call Flow Builder state, stored as an opaque JSON object. Produced and consumed by the SignalWire Call Flow Builder UI; not used by SWML execution.
          - `relayml` SWMLCallingSWMLObject — A SWML document for handling inbound and outbound calls. Contains a `sections` map where each section holds an array of methods that run sequentially. Execution starts at `sections.main`. See the [Calling SWML reference](/docs/swml/reference/calling) for the full list of available methods.
            - `version` '1.0.0'
            - `sections` SWMLCallingSection, required
              - …
          - `document_version` integer — The current revision of the call flow. Every update must increase this number.
      - ResourceResponseCXMLWebhook
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'cxml_webhook', required — The type of Resource
        - `cxml_webhook` CXMLWebhook, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `name` string, required — Name of the CXML Webhook.
          - `used_for` 'calling' | 'messaging', required — Sets the handler to handle incoming `calls` or `messages`.
          - `primary_request_url` string, uri, required — Primary request url of the CXML Webhook.
          - `primary_request_method` 'GET' | 'POST', required — The method type to use for the URL
          - `fallback_request_url` string, uri, nullable, required — Fallback request url of the CXML Webhook.
          - `fallback_request_method` 'GET' | 'POST', required — The method type to use for the URL
          - `status_callback_url` string, uri, nullable, required — Status callback url of the CXML Webhook.
          - `status_callback_method` 'GET' | 'POST', required — The method type to use for the URL
      - ResourceResponseCXMLScript
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'cxml_script', required — The type of Resource
        - `cxml_script` CXMLScript, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `contents` string, required — The cXML script contents
          - `request_count` integer, required — The amout of times the cXML script has been requested
          - `last_accessed_at` string, date-time, nullable, required — The date and time when the cXML script was last accessed
          - `request_url` string, uri, required — The URL where the cXML script can be accessed
          - `script_type` 'calling' | 'messaging', required — The script type the cXML Script is used for
          - `display_name` string, required — Display name of the cXML Script Fabric Resource
          - `status_callback_url` string, uri, nullable — The url that will send status updates for the cXML Script
          - `status_callback_method` 'GET' | 'POST' — The method type to use for the URL
      - ResourceResponseCXMLApplication
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'cxml_application', required — The type of Resource
        - `cxml_application` CxmlApplication, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `project_id` string, uuid, required — Universal Unique Identifier.
          - `friendly_name` string, required — Display name of the cXML Application
          - `voice_url` string, nullable, required — URL to handle incoming calls
          - `voice_method` 'GET' | 'POST', required — The method type to use for the URL
          - `voice_fallback_url` string, nullable, required — Fallback URL for voice errors
          - `voice_fallback_method` 'GET' | 'POST', required — The method type to use for the URL
          - `status_callback` string, uri, nullable, required — URL to receive status callbacks
          - `status_callback_method` 'GET' | 'POST', required — The method type to use for the URL
          - `sms_url` string, nullable, required — URL to handle incoming messages
          - `sms_method` 'GET' | 'POST', required — The method type to use for the URL
          - `sms_fallback_url` string, nullable, required — Fallback URL for SMS errors
          - `sms_fallback_method` 'GET' | 'POST', required — The method type to use for the URL
          - `sms_status_callback` string, nullable, required — URL to receive SMS status callbacks
          - `sms_status_callback_method` 'GET' | 'POST', required — The method type to use for the URL
      - ResourceResponseDialogFlowAgent
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'dialogflow_agent', required — The type of Resource
        - `dialogflow_agent` DialogflowAgent, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `say_enabled` boolean — Whether to enable the 'say' feature
          - `say` string — Default message to say
          - `voice` string — Voice to use for speech
          - `display_name` string — Display name of the Dialogflow Agent
          - `dialogflow_reference_id` string, uuid — Universal Unique Identifier.
          - `dialogflow_reference_name` string — Dialogflow reference name
      - ResourceResponseFSConnector
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'freeswitch_connector', required — The type of Resource
        - `freeswitch_connector` FreeswitchConnector, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `name` string — Name of the FreeSWITCH Connector
          - `caller_id` string, nullable — Caller ID for the connector
          - `send_as` string, nullable — Send as identifier
      - ResourceResponseRelayApp
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'relay_application', required — The type of Resource
        - `relay_application` RelayApplication, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `name` string, required — Name of the Relay Application
          - `topic` string, required — Topic of the Relay Application
          - `call_status_callback_url` string, uri, nullable, required — Call status callback URL
      - ResourceResponseSipEndpoint
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'sip_endpoint', required — The type of Resource
        - `sip_endpoint` FabricSipEndpoint, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `username` string, required — The username of the Sip Endpoint
          - `caller_id` string, required — The caller ID that will showup when dialing from this Sip Endpoint
          - `send_as` string, required — The Sip username that will show up on the calle's side. Overrides the username.
          - `ciphers` Ciphers[], required — Ciphers that can be enabled for calls on this Sip Endpoint.
          - `codecs` Codecs[], required — Codecs that can be enabled for calls on this Sip Endpoint.
          - `encryption` 'required' | 'optional' | 'default', required
          - `call_handler` 'default' | 'passthrough' | 'block-pstn' | 'resource', required
          - `calling_handler_resource_id` string, uuid, required — Universal Unique Identifier.
      - ResourceResponseSipGateway
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'sip_gateway', required — The type of Resource
        - `sip_gateway` SipGateway, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `uri` string, required — The URI for the SIP Gateway.
          - `name` string, required — Display name of the SIP Gateway.
          - `ciphers` Ciphers[], required — List of supported SIP ciphers.
          - `codecs` Codecs[], required — List of supported codecs.
          - `encryption` 'required' | 'optional' | 'default', required
      - ResourceResponseSubscriber
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'subscriber', required — The type of Resource
        - `subscriber` Subscriber, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `email` string, required — Email of the Subscriber.
          - `first_name` string, required — First name of the Subscriber.
          - `last_name` string, required — Last name of the Subscriber.
          - `display_name` string, required — Display name of the Subscriber.
          - `job_title` string, required — Job title of the Subscriber.
          - `timezone` string, required — Timezone of the Subscriber.
          - `country` string, required — Country of the Subscriber.
          - `company_name` string, required — Company name of the Subscriber.
      - ResourceResponseSWMLWebhook
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'swml_webhook', required — The type of Resource
        - `swml_webhook` SWMLWebhook, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `name` string, required — Name of the SWML Webhook.
          - `used_for` 'calling' | 'messaging', required — Indicates whether this SWML Webhook handles inbound calls or inbound messages. Determines the payload SignalWire POSTs to `primary_request_url`.
          - `primary_request_url` string, uri, required — Primary URL SignalWire fetches the SWML document from when the webhook fires. The webhook payload depends on `used_for`: for `calling`, see the [SWML inbound call webhook](/docs/apis/rest/swml-webhook/webhooks/inbound-call-webhook); for `messaging`, see the [SWML inbound message webhook](/docs/apis/rest/swml-webhook/webhooks/inbound-message-webhook).
          - `primary_request_method` 'GET' | 'POST', required — The method type to use for the URL
          - `fallback_request_url` string, uri, nullable, required — Fallback URL SignalWire fetches the SWML document from if the primary URL fails. Receives the same payload as `primary_request_url` — see the [SWML inbound call webhook](/docs/apis/rest/swml-webhook/webhooks/inbound-call-webhook) or [SWML inbound message webhook](/docs/apis/rest/swml-webhook/webhooks/inbound-message-webhook) depending on `used_for`.
          - `fallback_request_method` 'GET' | 'POST', required — The method type to use for the URL
          - `status_callback_url` string, uri, nullable, required — URL to receive message status callback events for outbound messages sent by this webhook (`reply` or `send_sms`). See the [Message status callback](/docs/apis/rest/messages/webhooks/message-status-callback) webhook for the payload your URL will receive.
          - `status_callback_method` 'GET' | 'POST', required — The method type to use for the URL
      - ResourceResponseSWMLScript
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'swml_script', required — The type of Resource
        - `swml_script` union, required — A SWML Script — either a [Calling Script](#schema/CallingSwmlScript) for inbound or outbound calls, or a [Messaging Script](#schema/MessagingSwmlScript) for inbound SMS or MMS messages. The `script_type` field on each script (`"calling"` or `"messaging"`) identifies which kind it is.
          - CallingSwmlScript — A SWML Script that handles inbound or outbound calls. The `contents` field carries a [calling SWML document](/docs/swml/reference/calling).
            - `id` string, uuid, required — Universal Unique Identifier.
            - `display_name` string, required — The displayed name of the SWML script.
            - `script_type` 'calling', required — Set to `calling` for SWML Scripts that handle inbound or outbound calls.
            - `request_url` string, uri, required — URL where this SWML Script is hosted.
            - `contents` SWMLCallingSWMLObject, required — A SWML document for handling inbound and outbound calls. Contains a `sections` map where each section holds an array of methods that run sequentially. Execution starts at `sections.main`. See the [Calling SWML reference](/docs/swml/reference/calling) for the full list of available methods.
              - …
            - `status_callback_url` string, uri — URL that receives status callbacks for messages sent or calls made by this script.
            - `status_callback_method` 'POST' — HTTP method used for status callbacks.
          - MessagingSwmlScript — A SWML Script that handles inbound SMS or MMS messages. The `contents` field carries a [messaging SWML document](/docs/swml/reference/messaging).
            - `id` string, uuid, required — Universal Unique Identifier.
            - `display_name` string, required — The displayed name of the SWML script.
            - `script_type` 'messaging', required — Set to `messaging` for SWML Scripts that handle inbound SMS or MMS messages.
            - `request_url` string, uri, required — URL where this SWML Script is hosted.
            - `contents` SWMLMessagingSWMLObject, required — A SWML document for handling inbound SMS or MMS messages. The document has a top-level `sections` map; execution starts at `sections.main`, and each section is an ordered array of methods. Additional sections can be invoked via `execute`, `transfer`, or `goto`. See the [Messaging SWML reference](/docs/swml/reference/messaging) for the full list of available methods.
              - …
      - ResourceResponseConferenceRoom
        - `id` string, uuid, required — Universal Unique Identifier.
        - `project_id` string, uuid, required — Universal Unique Identifier.
        - `display_name` string, required — Display name of the Resource
        - `created_at` string, date-time, required — Date and time when the resource was created.
        - `updated_at` string, date-time, required — Date and time when the resource was updated.
        - `type` 'swml_script', required — The type of Resource
        - `conference_room` ConferenceRoom, required
          - `id` string, uuid, required — Universal Unique Identifier.
          - `name` string, required — The name of the Conference Room
          - `description` string, required — The descrption of the Conference Room
          - `display_name` string, required — Display name of the Conference Room
          - `max_members` integer, required — Maximum number of members allowed in the conference room
          - `quality` '1080p' | '720p', required — The viudeo quality of the Conference Room.
          - `fps` 30 | 20, required — The frames-per-second (fps) of the participants videos in the conference.
          - `join_from` string, date-time, nullable, required — The time users are allowed to start joining the conference. Joining before this time will result in failure to join the conference.
          - `join_until` string, date-time, nullable, required — The time users are allowed to until the conference is locked. Attempting to join the conference after the set time will result in failure to join the conference.
          - `remove_at` string, date-time, nullable, required — The time to remove all participants from the conference.
          - `remove_after_seconds_elapsed` integer, nullable, required — The amount of time in seconds to remove a particpant from a conference after they join.
          - `layout` 'grid-responsive' | 'grid-responsive-mobile' | 'highlight-1-responsive' | '1x1' | '2x1' | '2x2' | '5up' | '3x3' | '4x4' | '5x5' | '6x6' | '8x8' | '10x10', required
          - `record_on_start` boolean, required — Starts recording when the conference starts.
          - `tone_on_entry_and_exit` boolean, required — Plays a tone when a participant joins or leaves the conference.
          - `room_join_video_off` boolean, required — Turns the conference video off when the participant joins the room if `true`.
          - `user_join_video_off` boolean, required — Turns the participants video off when the participant joins the room if `true`.
          - `enable_room_previews` boolean, required — Enables live video room previews for the conference.
          - `sync_audio_video` boolean, nullable, required — Syncs the participants audio and video.
          - `meta` object, required — Metadata of the conference.
          - `prioritize_handraise` boolean, required — Indicator if the Conference Room will prioritize showing participants utilizing the hand raised feature.
  - `links` ResourcePaginationResponse, required
    - `self` string, uri, required — The link to the current page
    - `first` string, uri, required — The link to the first page
    - `next` string, uri — The link to the next page
    - `prev` string, uri — The link to the previous page

## Other responses

- `401` — Access is unauthorized.
- `404` — The server cannot find the requested resource.
- `500` — An internal server error occurred.

---

[API](https://skmtc.net/signalwire/apis/signalwire-rest-api.md) · [All operations](https://skmtc.net/signalwire/apis/signalwire-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/signalwire/signalwire-rest-api/versions/05c5164b85c7/schema)
