# How to get the file extension from MIME type in Node.js 

By Atta Ur Rehman Shah (https://attacomsian.com/about). Published Jun 24, 2021, updated Oct 3, 2022. Topics: Node.js.
Canonical URL: https://attacomsian.com/blog/nodejs-get-file-extension-from-mime-type

> A quick guide to learn how to get the file extension from the MIME type using the Node.js path module.

To detect file extension from the MIME type of a file, you can use the [mime-types](https://www.npmjs.com/package/mime-types) package from the NPM registry.

The `mime-types` package provides the `extension()` method that returns the default extension of the given content-type:

```javascript
const mime = require('mime-types')

mime.extension('image/jpeg')    // jpeg

mime.extension('text/plain')    // txt

mime.extension('image/svg+xml')    // svg

mime.extension('application/octet-stream') // bin
```

If the input string is not a valid MIME type, the `extension()` method returns `false`:

```javascript
mime.extension('node/basic') // false

mime.extension('image/jpg') // false
```

If you already know the filename, you could use the built-in `path` module to [get file extension](https://attacomsian.com/blog/nodejs-get-file-extension):

```javascript
const path = require('path')
path.extname('contract.pdf') // .pdf
```
