To proxy traffic over HTTPS you need to install Graph Proxy's root CA (certificate authority). With this we can inspect network traffic as clear text then re-encrypt the traffic to the server. Graph Proxy will never send the traffic to anywhere outside of the local app.
The auto-install wizard can handle this for you. In the menu go to Security > Configure Certificate.
Click "generate and trust certificate" which will prompt for your password twice. This will install then trust the certificate into your keychain.
You should see the red SSL Disabled turn to a green SSL Enabled. Now HTTPS traffic will appear in the app.
If the auto-wizard fails the generated certificate can be found under ~/.graphproxy. You can take the graphproxy-ca.pem cert and install and trust it manually.
By default it is not possible to intercept traffic from localhost. To resolve this you need to point a custom domain name to localhost.
On mac you can do this by adding an entry to
For example by adding the following entry and saving the file:
We can spin up our local app at
localhost:3000, then visit the app at
http://graphproxy.local:3000 now any request from this app will appear in Graph Proxy.
Graph Proxy can intercept live requests and return mock data. This is useful for testing different scenarios on both live and development environments. Providing the GraphQL server can be introspected.
To enable mocking you first need to add a new endpoint under the mock panel.
Once the endpoint has been introspected you can either manually add mocks, or right click on any request and click "Create Mock"
Now when requesting data from the browser or any other app the response will be your mocked data.
Using this you can see how your app handles different scenarios such as empty responses, errors, and other data.
To return an error choose "Error" from the dropdown on the mock panel, entering an error message and/or code.
To uninstall Graph Proxy on mac simply delete the application.
Any SSL certificate generated is password protected and securely locked to Graph Proxy, so no other app can ever access it. However if you wish to remove it from keychain do the following:
- Open Keychain Access
- Click "All Items"
- Search for "Graph Proxy"
- Delete both the certificate and the application password