Mastodon Export Mutes List: How to Back Up Without Settings UI
🔍 WiseChecker

Mastodon Export Mutes List: How to Back Up Without Settings UI

You want to export your Mastodon mutes list but the Settings UI is missing the export button, or you cannot access the web interface at all. This happens because the Mastodon API still exposes the mute data even when the web front end hides the export option for mutes specifically. This article shows you how to retrieve your mutes list using the Mastodon API directly from the command line or a browser, without needing the Settings UI.

Mastodon stores mute records per account and makes them available through the API endpoint /api/v1/mutes. The web interface does not provide a dedicated export button for mutes, but the API returns the full list in JSON format. You can save that output to a file for backup or migration purposes.

You will learn two methods: using a simple browser request while logged into Mastodon, and using the toot command-line tool for automated scripting. Both methods work on Windows, macOS, and Linux.

Key Takeaways: Export Mutes Without Settings UI

  • API endpoint /api/v1/mutes: Returns the full mutes list as JSON when authenticated with your access token.
  • Browser Developer Tools > Network tab: Capture the API response while viewing the Mutes page in the web interface.
  • toot mutes command: Command-line tool that fetches and displays your mutes list in plain text or JSON format.

ADVERTISEMENT

Why Mastodon Hides the Mute Export in Settings

Mastodon’s Settings UI under Preferences > Import and Export > Export provides CSV downloads for follows, blocks, domain blocks, and bookmarks. Mutes are not included in that list. The Mastodon development team has not added a dedicated mute export button to the web interface, likely because mute lists are less commonly needed for migration than follows or blocks.

The API, however, treats mutes the same as other lists. The /api/v1/mutes endpoint returns a paginated JSON array of account objects. Each object contains the account ID, username, display name, and other metadata. This data is available to any authenticated client that holds a valid access token with the read:mutes scope.

What the API Response Contains

The JSON output from the mutes endpoint includes for each muted account:

  • id – the numeric account ID on the instance
  • username – the account’s username (without @)
  • acct – the full handle (username@instance for remote accounts)
  • display_name – the user’s display name
  • url – the profile URL
  • avatar – avatar image URL

This data is sufficient to reconstruct the mutes list on another instance or to archive it locally.

Method 1: Export Mutes Using Browser Developer Tools

This method works in any modern browser (Chrome, Edge, Firefox, Brave). You do not need to install any software. You only need to be logged into your Mastodon instance in the browser.

  1. Open your Mastodon instance and log in
    Navigate to your instance’s home page and ensure you are signed in with the account whose mutes you want to export.
  2. Navigate to the Muted users page
    Go to Preferences > Privacy and reach > Muted users. This page lists all accounts you have muted. The browser will send API requests to load this list.
  3. Open Developer Tools
    Press Ctrl+Shift+I on Windows or Cmd+Option+I on macOS. Click the Network tab. Make sure the recording button (red circle) is active.
  4. Refresh the Muted users page
    Press F5 or click the browser’s reload button. The Network tab will capture all requests the page makes.
  5. Find the mutes API request
    In the Network tab, type mutes in the filter box. Look for a request with a name like mutes and a status of 200. Click on it.
  6. Copy the JSON response
    Click the Response tab inside the request detail pane. You will see the JSON array of muted accounts. Select all the text (Ctrl+A), copy it (Ctrl+C), and paste it into a text file. Save the file as mastodon-mutes.json.

If you have many mutes, the API may return paginated results. Check the Headers tab for a Link header that points to the next page. You can click that URL in a new browser tab to get the next batch, then repeat the copy process.

ADVERTISEMENT

Method 2: Export Mutes Using the Toot Command-Line Tool

The toot tool is a Python-based Mastodon CLI client. It works on Windows, macOS, and Linux. This method is ideal for scripting and automation because you can pipe the output directly to a file.

  1. Install toot
    Open a terminal and run pip install toot. On Windows, use Command Prompt or PowerShell as administrator. On macOS or Linux, you may need to use pip3 instead of pip.
  2. Authenticate toot with your Mastodon account
    Run toot login. Follow the prompts: enter your instance URL (for example, https://mastodon.social), then open the provided URL in your browser, authorize the app, and copy the authorization code back into the terminal.
  3. Export the mutes list to a file
    Run the command toot mutes > mastodon-mutes.txt. This saves the mutes list in plain text format. Each line shows the muted account’s full handle.
  4. Export as JSON for programmatic use
    If you need the structured JSON data, run toot mutes --json > mastodon-mutes.json. The --json flag outputs the raw API response.

The toot mutes command automatically handles pagination. It fetches all pages and combines the results into a single output.

Common Issues When Exporting Mutes Without Settings UI

API Returns an Empty Array

If the API returns [], you have no muted accounts. Check the Muted users page in Settings to confirm. If you see muted accounts there but the API returns empty, you may be using an access token with insufficient scopes. Regenerate the token with the read:mutes scope.

Browser Developer Tools Shows No Mutes Request

Some Mastodon instances load the mutes list using client-side JavaScript that does not trigger a separate network request. In that case, use the toot method instead. Alternatively, try using the Mastodon API directly by entering https://yourinstance.com/api/v1/mutes in the browser address bar while logged in. The browser will display the JSON response.

Paginated Results Are Missing Accounts

The Mastodon API returns a maximum of 40 records per page. If you have more than 40 mutes, the response includes a Link header with the next page URL. When using the browser method, manually follow that URL for each page. The toot tool handles this automatically.

Browser Developer Tools vs Toot CLI: Export Methods Compared

Item Browser Developer Tools Toot CLI
Installation required None Python and pip
Pagination handling Manual Automatic
Output format JSON only Plain text or JSON
Best for One-time export Recurring backups and scripting
Platform support All browsers Windows, macOS, Linux

You now have two reliable methods to export your Mastodon mutes list without relying on the Settings UI. The browser developer tools method works instantly for a one-off backup. The toot CLI method is better for automated, recurring exports. After exporting, store the JSON file securely and consider importing it into a new instance using the API endpoint /api/v1/mutes with a POST request. For advanced users, combine the export with a cron job or Task Scheduler trigger to run toot mutes --json weekly and overwrite your backup file.

ADVERTISEMENT