How to setup Charles proxy

Introduction

Charles Proxy is a popular web debugging tool that helps developers and testers view all HTTP/S traffic between their machine and the internet. It’s widely used for troubleshooting, API testing, and monitoring network calls in real-time. In this guide, we’ll walk you through setting up Charles Proxy from scratch, so you can start intercepting network requests in no time. Afterward we will take a look at a tool that provides similar functionality but with a modern and easy-to-use UI.

Step 1: Download and Install Charles Proxy

  • Visit the official website: Head over to the Charles Proxy website and download the appropriate version for your operating system (Windows, macOS, or Linux).
  • Run the installer: Follow the installation wizard prompts. On macOS, you may need to drag the app into the Applications folder. For Windows, follow the standard installation steps.
  • Launch Charles Proxy: Once installed, open Charles Proxy. You’ll be greeted with a trial version screen if you haven’t purchased a license.

Step 2: Set Up SSL Proxying

Charles Proxy allows you to inspect HTTPS traffic as well. Here’s how to set it up:

Enabling SSL Proxying in Charles

  • Open Charles Proxy.
  • Go to the Proxy menu and select SSL Proxying Settings.
      • In the pop-up window, click Add in the Include section to specify the domains you want to decrypt.
      • You can choose to decrypt traffic from all domains (by entering *) or specify certain domains like api.example.com.
    • Click OK to save your settings.

    Install the Charles Root Certificate

    To inspect HTTPS traffic, Charles needs to act as a trusted certificate authority (CA). This requires installing a root certificate on your system or device.

      On Windows

      1. Go to Help > SSL Proxying > Install Charles Root Certificate.

      1. A certificate installation window will appear here Click “ Install Certificate”
      1. Now select between “Current User” or “Local Machine” as you prefer.

      On Mac

      1. Go to Help > SSL Proxying > Install Charles Root Certificate.

      1. The Keychain Access window will open up. here select Charles proxy certificate
      1. Now click the “ When using this certificate” dropdown and select “ Always Trust “.

      On Linux

      1. Go to Help > SSL Proxying > Install Charles Root Certificate.

      1. Your browser will download the certificate. Open the file, and the system will prompt you to install it.

      Step 4: Capture Network Traffic

      • Start capturing traffic: Once the proxy settings are configured, go back to Charles Proxy, and hit the record button (the red dot) to start capturing requests.
      • View traffic: As you browse the web or use apps, you’ll start seeing requests and responses in Charles’s main window. You can filter, inspect, and export this data for debugging purposes.

      Requestly: An Easier Alternative to Charles Proxy

      Requestly offers an easier, browser-based alternative for users who find Charles Proxy complex. It provides similar functionality through a more user-friendly interface, making it ideal for quick web traffic modifications without the need for advanced setup. For every feature in Charles Proxy, there’s a corresponding tool in Requestly, such as redirecting URLs, modifying headers, and blocking requests.

      Check out our other blogs on Charles proxy tools to see the comparison

      Conclusion

      Setting up Charles Proxy allows you to inspect and debug network traffic in real-time, making it an invaluable tool for developers and testers. By following the steps outlined in this guide, you should be able to set up Charles Proxy and start capturing HTTP/S traffic quickly.

      Share this article:

      Subscribe to our weekly newsletter !

      Join 10k developers and QAs to get weekly updates with Requestly's newsletter.​

      This article was written by:

      Picture of Dinesh Thakur

      Dinesh Thakur

      Dinesh Thakur, fascinated by technology since childhood, has mastered programming through dedication. Whether working solo or in a team, he thrives on challenges, crafting innovative solutions.

      Join 10k developers and get weekly updates with Requestly's newsletter.

      Contents