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

# List Resources

`GET /api/fabric/resources`

Lists every supported Fabric resource in your SignalWire project, regardless of type. Use it for project-wide inventory or when you do not yet know whether an ID belongs to an AI Agent, script, SIP resource, or another resource type. Use a type-specific collection such as [SWML Scripts](/docs/apis/rest/swml-scripts/list-swml-scripts) or [SIP Credentials](/docs/apis/rest/sip-credentials/list-sip-credentials) to create resources or work with their full configuration.

#### 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 — Creates an AI agent that conducts voice conversations using automatic speech recognition (ASR), large language models (LLMs), and text-to-speech (TTS) synthesis. The agent processes caller speech in real-time, generates contextually appropriate responses, and can execute custom functions to interact with external systems through SignalWire AI Gateway (SWAIG). See the [SWML `ai` method reference](/docs/swml/reference/calling/ai) for the complete configuration contract.
          - `hints` string[] — 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. See [`ai.hints` in the SWML reference](/docs/swml/reference/calling/ai#aihints).
          - `languages` object[] — An array of JSON objects defining supported languages in the conversation. Mutually exclusive with `multilingual`: if both are set, `multilingual` is used and this array is ignored. See [`ai.languages` in the SWML reference](/docs/swml/reference/calling/ai#ailanguages).
          - `params` object — A JSON object containing parameters as key-value pairs. See [`ai.params` in the SWML reference](/docs/swml/reference/calling/ai#aiparams).
          - `post_prompt` object — The final set of instructions and configuration settings to send to the agent. See [`ai.post_prompt` in the SWML reference](/docs/swml/reference/calling/ai#aipost_prompt).
          - `pronounce` object[] — An array of JSON objects to clarify the AI's pronunciation of words or expressions. See [`ai.pronounce` in the SWML reference](/docs/swml/reference/calling/ai#aipronounce).
          - `prompt` object, required — Defines the AI agent's personality, goals, behaviors, and instructions for handling conversations. The prompt establishes how the agent should interact with callers, what information it should gather, and how it should respond to various scenarios. It is recommended to write prompts using markdown formatting. See [`ai.prompt` in the SWML reference](/docs/swml/reference/calling/ai#aiprompt).
          - `SWAIG` object — An array of JSON objects to create user-defined functions/endpoints that can be executed during the dialogue. See [`ai.SWAIG` in the SWML reference](/docs/swml/reference/calling/ai#aiswaig).
          - `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` object — The calling SWML document this Call Flow executes. Uses [calling SWML methods](/docs/swml/reference/calling).
          - `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/webhooks/inbound-call-webhook); for `messaging`, see the [SWML inbound message webhook](/docs/apis/rest/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/webhooks/inbound-call-webhook) or [SWML inbound message webhook](/docs/apis/rest/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/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` object, required — The calling SWML document executed when this script runs. Uses [calling SWML methods](/docs/swml/reference/calling).
            - `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` object, required — The messaging SWML document executed when this script runs. Uses [messaging SWML methods](/docs/swml/reference/messaging).
      - 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.

## Changes

> 137 revisions in range; 3 could not be searched.

- **2026-08-20** `173ff877e9cd` — 3 warning, 1 info
  - removed the optional property `data/items/oneOf[subschema #1: AI Agent]/ai_agent/allOf[subschema #1: AI Agent]/global_data` from the response with the `200` status
  - removed the optional property `data/items/oneOf[subschema #1: AI Agent]/ai_agent/allOf[subschema #1: AI Agent]/multilingual` from the response with the `200` status
  - removed the optional property `data/items/oneOf[subschema #1: AI Agent]/ai_agent/allOf[subschema #1: AI Agent]/post_prompt_url` from the response with the `200` status
  - response property `data/items/oneOf[subschema #1: AI Agent]/ai_agent/allOf[subschema #1: AI Agent]/hints/items/` list-of-types was narrowed by removing types `object` from media type `application/json` of response `200`
- …earlier changes not shown

[Full history](https://skmtc.dev/signalwire/apis/signalwire-rest-api/changes/api/fabric/resources/get.md)

---

[API](https://skmtc.dev/signalwire/apis/signalwire-rest-api.md) · [All operations](https://skmtc.dev/signalwire/apis/signalwire-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/signalwire/signalwire-rest-api/revisions/792d5b8e2970/schema)
