> ## Documentation Index > Fetch the complete documentation index at: https://developer.rocket.chat/llms.txt > Use this file to discover all available pages before exploring further. # Get DM Files > Get all files in a DM. ### Changelog | Version | Description | | ---------------- | ------------| |0.64.0 | Change `userId` to `user` object in response| |0.59.0 | Added | ## OpenAPI ````json GET /api/v1/dm.files { "openapi": "3.0.0", "info": { "version": "1.0.0", "title": "Messaging" }, "servers": [ { "url": "https://apiexplorer.support.rocket.chat" } ], "tags": [ { "name": "Chat" }, { "name": "Direct Messages" }, { "name": "Auto-Translate" } ], "paths": { "/api/v1/dm.files": { "get": { "tags": [ "Direct Messages" ], "summary": "Get DM Files", "description": "Get all files in a DM. \n\n### Changelog\n| Version | Description | \n| ---------------- | ------------|\n|0.64.0 | Change `userId` to `user` object in response|\n|0.59.0 | Added |", "operationId": "get-api-v1-im.files", "parameters": [ { "$ref": "#/components/parameters/Auth-Token" }, { "$ref": "#/components/parameters/UserId" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/count" }, { "$ref": "#/components/parameters/sort" }, { "$ref": "#/components/parameters/query" }, { "$ref": "#/components/parameters/fields" }, { "$ref": "#/components/parameters/filterTypeGroup" }, { "$ref": "#/components/parameters/filterName" }, { "name": "roomId", "in": "query", "description": "The roomId of the DM. It is required if `username` is not provided.", "schema": { "type": "string" } }, { "$ref": "#/components/parameters/Optional-Username" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "type": "object", "properties": { "files": { "type": "array", "items": { "type": "object", "properties": { "_id": { "type": "string" }, "name": { "type": "string" }, "size": { "type": "integer" }, "type": { "type": "string" }, "rid": { "type": "string" }, "userId": { "type": "string" }, "store": { "type": "string" }, "_updatedAt": { "type": "string" }, "complete": { "type": "boolean" }, "etag": { "type": "string" }, "path": { "type": "string" }, "progress": { "type": "integer" }, "token": { "type": "string" }, "uploadedAt": { "type": "string" }, "uploading": { "type": "boolean" }, "url": { "type": "string" }, "typeGroup": { "type": "string" }, "user": { "type": "object", "properties": { "_id": { "type": "string" }, "username": { "type": "string" }, "name": { "type": "string" } } } } } }, "count": { "type": "integer" }, "offset": { "type": "integer" }, "total": { "type": "integer" }, "success": { "type": "boolean" } } }, "examples": { "Example 1": { "value": { "files": [ { "_id": "6542e355a2f73c7460e18ef6", "name": "2023-11-01_21-13-38.snagx", "size": "652277", "type": "application/octet-stream", "rid": "5fRTXMt7DMJbpPJfhgzvcvpov9G4TxbGFS", "userId": "5fRTXMt7DMJbpPJfh", "store": "GridFS:Uploads", "_updatedAt": "2023-11-01T23:46:29.216Z", "complete": "true", "etag": "7qDc9jBurptfmrAxr", "path": "/ufs/GridFS:Uploads/6542e355a2f73c7460e18ef6/2023-11-01_21-13-38.snagx", "progress": "1", "token": "eAD959d9A8", "uploadedAt": "2023-11-01T23:46:29.196Z", "uploading": "false", "url": "http://localhost:3000//ufs/GridFS:Uploads/6542e355a2f73c7460e18ef6/2023-11-01_21-13-38.snagx", "typeGroup": "application", "user": { "_id": "5fRTXMt7DMJbpPJfh", "username": "test.john", "name": "Test John" } } ], "count": "1", "offset": "0", "total": "1", "success": "true" } } } } } }, "401": { "$ref": "#/components/responses/authorizationError" } } } } }, "components": { "parameters": { "Auth-Token": { "name": "X-Auth-Token", "in": "header", "description": "The `authToken` of the authenticated user.", "required": "true", "schema": { "type": "string" }, "example": "RScctEHSmLGZGywfIhWyRpyofhKOiMoUIpimhvheU3f" }, "UserId": { "name": "X-User-Id", "in": "header", "description": "The `userId` of the authenticated user.", "required": "true", "schema": { "type": "string" }, "example": "rbAXPnMktTFbNpwtJ" }, "offset": { "name": "offset", "in": "query", "description": "Number of items to \"skip\" in the query, i.e. requests return count items, skipping the first offset items. Refer to the [official documentation](https://developer.rocket.chat/apidocs/query-parameters#pagination) to learn more.", "required": "false", "schema": { "type": "integer" }, "example": "50" }, "count": { "name": "count", "in": "query", "description": "The number of items to return. Refer to the [official documentation](https://developer.rocket.chat/apidocs/query-parameters#pagination) to learn more.", "required": "false", "schema": { "type": "integer" }, "example": "50" }, "sort": { "name": "sort", "in": "query", "description": "List of fields to order by, and in which direction. This is a JSON object, with properties listed in desired order, with values of 1 for ascending, or -1 for descending. For example, `{ \"value\": -1, \"_id\": 1 }`. Refer to the [official documentation](https://developer.rocket.chat/apidocs/query-parameters#pagination) to learn more.", "required": "false", "schema": {} }, "query": { "name": "query", "in": "query", "description": "This parameter allows you to use MongoDB query operators to search for specific data. For example, to query users with a name that contains the letter \"g\": query=`{ \"name\": { \"$regex\": \"g\" }}`. Refer to the [official documentation](https://developer.rocket.chat/apidocs/query-parameters#query-and-fields) to learn more.", "required": "false", "schema": {} }, "fields": { "name": "fields", "in": "query", "description": "This parameter accepts a JSON object with properties that have a value of 1 or 0 to include or exclude them in the response. For example, to only retrieve the usernames of users: fields=`{ \"username\": 1 }`. Refer to the [official documentation](https://developer.rocket.chat/apidocs/query-parameters#query-and-fields) to learn more.", "required": "false", "schema": { "type": "string" } }, "filterTypeGroup": { "name": "typeGroup", "in": "query", "description": "Filter results by the type of file. Available options:\n- `all`: Return all file types.\n- `image`: Filter by image files.\n- `video`: Filter by video files.\n- `audio`: Filter by audio files.\n- `text`: Filter by text documents.\n- `application`: Filter by other file types.", "schema": { "type": "string" }, "example": "images" }, "filterName": { "name": "name", "in": "query", "description": "The name of the file to search for.", "schema": { "type": "string" }, "example": "logo" }, "Optional-Username": { "name": "username", "in": "query", "description": "The username of the user in the DM. It is required if `roomId` is not provided.", "required": "false", "schema": { "type": "string" } } }, "responses": { "authorizationError": { "description": "Unauthorized", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "string" }, "message": { "type": "string" } } }, "examples": { "Authorization Error": { "value": { "status": "error", "message": "You must be logged in to do this." } } } } } } } } } ````