# List Plugin Resources GET https://api.moveworks.ai/export/v1/records/plugin-resources Retrieve all resources used by AI Assistant during an interaction. Reference: https://docs.moveworks.com/api-reference/data-api/list-plugin-resources ## OpenAPI Specification ```yaml openapi: 3.1.1 info: title: List Plugin Resources version: endpoint_.listPluginResources paths: /plugin-resources: get: operationId: list-plugin-resources summary: List Plugin Resources description: Retrieve all resources used by AI Assistant during an interaction. tags: - [] parameters: - name: $filter in: query description: >- Filter plugin resources by a condition. This API supports the standard odata query language on all string and integer attributes required: false schema: type: string - name: $select in: query description: >- Select which properties to include in the response for plugin resources. required: false schema: type: string - name: $orderby in: query description: Order plugin resources by specific fields. required: false schema: type: string - name: $top in: query description: Specify the number of plugin resources results to return. required: false schema: type: integer - name: $skip in: query description: Skip the first n plugin resources results. required: false schema: type: integer - name: Authorization in: header required: true schema: type: string responses: '200': description: Successfully retrieved list of interactions content: application/json: schema: $ref: '#/components/schemas/pluginresources' '400': description: Bad request error content: {} '403': description: Forbidden error content: {} '404': description: URL not found error content: {} '429': description: Rate limiting exceeding error content: {} '500': description: Internal server error content: {} components: schemas: PluginresourcesobjectDetail: type: object properties: domain: type: string description: >- This field denotes the resource domain configured in Moveworks Setup while configuring Content ingestion & Ticketing. Domain is defined for resources of types: RESOURCE_TYPE_APPROVAL RESOURCE_TYPE_FORM RESOURCE_TYPE_TICKET RESOURCE_TYPE_KNOWLEDGE external_resource_id: type: string format: uuid description: >- Service portal ID for the resource of type RESOURCE_TYPE_KNOWLEDGE. This field can be used to join data from external system. Please note external resource ID is not provided for FILE & EXTERNAL KNOWLEDGE (Public knowledge enabled in Moveworks) name: type: string description: >- Name of the resource being used by the plugin, populated for resources of types: RESOURCE_TYPE_FILE RESOURCE_TYPE_FORM RESOURCE_TYPE_KNOWLEDGE snippet: type: string description: >- Exact snippet from the resource being used to provide the summarized response, populated for resource types RESOURCE_TYPE_FILE RESOURCE_TYPE_KNOWLEDGE source: type: string description: >- Name of the external sources from which the resource is being fetched from, populated for resource types RESOURCE_TYPE_TICKET RESOURCE_TYPE_APPROVAL type: type: string description: >- Contains sub-type of approval or type of the ticket creation : User initiated v/s bot initiated, populated for resource types RESOURCE_TYPE_TICKET RESOURCE_TYPE_APPROVAL url: type: string description: |- External system URL of the resource, populated for resource types RESOURCE_TYPE_TICKET RESOURCE_TYPE_KNOWLEDGE RESOURCE_TYPE_FILE pluginresourcesobject: type: object properties: id: type: string format: uuid description: >- UUID assigned by the system to a resource being used by a plugin called during an interaction. resource_id: type: string format: uuid description: ID of the resource stored in Moveworks. type: type: string format: uuid description: >- This field represents the type of resource utilized by a plugin call. AI Assistant can utilize different resources to provide a summarized response such as KNOWLEDE ARTICLE, FILES, TICKET, APPROVAL etc plugin_call_id: type: string format: uuid description: ID of the plugin being called. interaction_id: type: string format: uuid description: ID of the interaction. user_id: type: string format: uuid description: User record ID assigned by the system to a user. conversation_id: type: string format: uuid description: ID of the parent conversation. detail: $ref: '#/components/schemas/PluginresourcesobjectDetail' description: This is a JSON object which contains metadata per resource type. cited: type: boolean description: >- This field denotes if the utilized resource was cited in the AI Assistant response or not. created_time: type: string format: date-time description: Timestamp when the resource was utilized by a plugin. last_updated_time: type: string format: date-time description: >- Timestamp when the plugin resource entry was last updated in this table. pluginresources: type: object properties: '@odata.context': type: string description: URL to the metadata of the response. '@odata.nextLink': type: string description: URL to fetch the next set of results. value: type: array items: $ref: '#/components/schemas/pluginresourcesobject' ``` ## SDK Code Examples ```python import requests url = "https://api.moveworks.ai/export/v1/records/plugin-resources" headers = {"Authorization": ""} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript const url = 'https://api.moveworks.ai/export/v1/records/plugin-resources'; const options = {method: 'GET', headers: {Authorization: ''}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.moveworks.ai/export/v1/records/plugin-resources" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://api.moveworks.ai/export/v1/records/plugin-resources") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = '' response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.moveworks.ai/export/v1/records/plugin-resources") .header("Authorization", "") .asString(); ``` ```php request('GET', 'https://api.moveworks.ai/export/v1/records/plugin-resources', [ 'headers' => [ 'Authorization' => '', ], ]); echo $response->getBody(); ``` ```csharp using RestSharp; var client = new RestClient("https://api.moveworks.ai/export/v1/records/plugin-resources"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", ""); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["Authorization": ""] let request = NSMutableURLRequest(url: NSURL(string: "https://api.moveworks.ai/export/v1/records/plugin-resources")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```