Skip to content
๐Ÿ›ธ๐Ÿ‘ฝ A free, fast & beautiful API request builder (online alternative to Postman) ๐Ÿ”ฅ
Vue JavaScript CSS Dockerfile
Branch: master
Clone or download
liyasthomas Support for Google Chrome Extension (#512)
Support for Google Chrome Extension
Latest commit 5119505 Jan 23, 2020
Type Name Latest commit message Commit time
Failed to load latest commit information.
.dependabot Add Dependabot config Aug 23, 2019
.github ๐Ÿ’ฒ Updated Open Collective link Jan 1, 2020
.vscode ๐ŸŽจ minor UI tweaks Sep 12, 2019
assets ๐ŸŽ‰ Powered by Netlify Jan 22, 2020
components GQL Query Editor doesn't give errors for empty queries Jan 19, 2020
directives โšก๏ธ Improving performance Nov 28, 2019
docs โšก๏ธ Zap Dec 10, 2019
functions Use relative imports Jan 22, 2020
lang โœจ Indicate installed extensions Jan 17, 2020
layouts โœจ Detech whether extension is already installed or not, if not, shoe โ€ฆ Jan 23, 2020
middleware โšก๏ธ Improving performance Nov 28, 2019
pages GraphQL page now notifies the query editor about the schema for validโ€ฆ Jan 19, 2020
plugins โšก๏ธ Improving performance Nov 28, 2019
static ๐ŸŽจ Various UI tweaks Dec 17, 2019
store fix: prevent creation of duplicate collection Jan 21, 2020
tests/e2e ๐Ÿ’š Fixing CI Build Jan 1, 2020
.all-contributorsrc ๐ŸŽ‰ Added navigation link to Documentation page in default layour Dec 21, 2019
.dockerignore ๐Ÿ”ฅ Firebase Hosting Oct 3, 2019
.editorconfig ๐Ÿšจ Removing linter warnings Sep 9, 2019
.firebaserc ๐Ÿ’š Fixing CI build Oct 3, 2019
.gitignore ๐Ÿ”ฅ Firebase Hosting Oct 3, 2019
.travis.yml Add e2e tests Oct 4, 2019 โฌ†๏ธ Bumped version to 1.5.0 Jan 4, 2020 โœ๏ธ Writing docs Nov 25, 2019 โœ๏ธ Writing docs Nov 25, 2019
Dockerfile โšก๏ธ Improving performance Nov 28, 2019
LICENSE ๐ŸŽ‰ Initial upload Aug 21, 2019 โœ๏ธ Updated extensions link Jan 23, 2020
build.js โšก๏ธ Improving performance Nov 28, 2019
cypress.json โšก๏ธ Improving performance Nov 28, 2019
database.rules.json โšก๏ธ Improving performance Nov 28, 2019
docker-compose.yml Separate dockerfile layers and add volume Nov 26, 2019
firebase.json ๐Ÿ’š Fixing CI build Oct 3, 2019
firestore.indexes.json ๐Ÿ”ฅ Firebase Hosting Oct 3, 2019
firestore.rules ๐Ÿ”ฅ Firebase Hosting Oct 3, 2019
jsconfig.json Revert "Revert "Migrate Postwoman to Nuxt.js (full Vue and SCSS suppoโ€ฆ Aug 24, 2019
nuxt.config.js Replaced hard-coded strings with localizable strings Jan 14, 2020
package-lock.json chore(deps-dev): bump node-sass from 4.13.0 to 4.13.1 Jan 18, 2020
package.json chore(deps-dev): bump node-sass from 4.13.0 to 4.13.1 Jan 18, 2020
storage.rules ๐Ÿ”ฅ Firebase Hosting Oct 3, 2019 logo

API request builder - A free, fast, and beautiful alternative to Postman

Helps you create your requests faster, saving you precious time on your development - Subscribe

Travis Build Status GitHub release Website Contributions welcome Financial Contributors on Open Collective Donate on PayPal Chat on Telegram Chat on Discord Tweet

Built with โค๏ธŽ by liyasthomas and contributors

Read: Story behind Postwoman, Postwoman v1.0

Chat: Telegram, Discord

Donate: PayPal, Open Collective, Patreon

Screenshot1 Screenshot2

Features โœจ

โค๏ธ Lightweight: Crafted with minimalistic UI design - simple design is the best design.

โšก๏ธ Fast: Send requests and get/copy responses in real-time - fast software is the best software.


  • GET - Retrieve information about the REST API resource
  • HEAD - Retrieve response headers identical to those of a GET request, but without the response body.
  • POST - Create a REST API resource
  • PUT - Update a REST API resource
  • DELETE - Delete a REST API resource or related component
  • CONNECT - Establishes a tunnel to the server identified by the target resource
  • OPTIONS - Describe the communication options for the target resource
  • TRACE - Performs a message loop-back test along the path to the target resource
  • PATCH - Apply partial modifications to a REST API resource
  • <custom> - Some APIs use custom request methods such as LIST. Type in your custom methods.

๐ŸŒˆ Make it yours: Customizable combinations for background, foreground and accent colors: because customization is freedom. Customize now โœจ.


  • Choose theme: Kinda Dark (default), Clearly White, Just Black and System theme
  • Choose accent color: Green (default), Yellow, Pink, Red, Purple, Orange, Cyan and Blue
  • Toggle multi-colored headings

Customized themes are synced with local session storage

๐Ÿ”ฅ PWA: Install as a PWA on your device.


๐Ÿš€ Request: Retrieve response from endpoint instantly.

  • Choose method
  • Enter URL and Path
  • Send


  • Copy/share public "Share URL"
  • Generate request code for JavaScript XHR, Fetch and cURL
  • Copy generated request code to clipboard
  • Import cURL
  • Label requests

๐Ÿ”Œ WebSocket: Establish full-duplex communication channels over a single TCP connection.

  • Send and receive data
  • Basic and Bearer Token authentication

๐Ÿ“ก Server Sent Events: Receive a stream of updates from a server over a HTTP connection without resorting to polling.

๐Ÿ”ฎ GraphQL: GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data.

  • Set endpoint and get schemas
  • Multi-column docs
  • Set custom request headers
  • Query schema
  • Get query response

๐Ÿ” Authentication: Allows to identify the end user.


  • None
  • Basic
  • Bearer Token
  • OAuth 2.0
  • OIDC Access Token/PKCE (Proof Key for Code Exchange)

๐Ÿ“ข Headers: Describes the format the body of your request is being sent as.

  • Add or remove Header list

๐Ÿ“ซ Parameters: Use request parameters to set varying parts in simulated requests.

๐Ÿ“ƒ Request Body: Used to send and receive data via the REST API.


  • Set Content Type
  • Add or remove Parameter list
  • Toggle between key-value and RAW input Parameter list

๐Ÿ‘‹ Responses: Contains the status line, headers and the message/response body.

  • Copy response to clipboard
  • Download response to as a file
  • View preview of HTML responses

โฐ History: Request entries are synced with local session storage to reuse with a single click.


  • Star
  • Label
  • Method
  • Status code
  • URL
  • Path
  • Timestamp
  • Duration
  • Pre-request script

History entries can be sorted by any fields

Histories can be deleted one-by-one or all together

๐Ÿ“ Collections: Keep your API requests organized with collections and folders. Reuse them with a single click.


  • Create infinite collections, folders and requests
  • Edit, delete, move, export, import and replace

Collections are synced with local session storage

๐ŸŒ Proxy: Enable Proxy Mode from Settings to access blocked APIs.


  • Hide your IP address
  • Fixes CORS (Cross Origin Resource Sharing) issues
  • Access APIs served in non-HTTPS (http://)
  • Use custom Proxy URL

Official Postwoman Proxy is hosted by ApolloTV - Privacy policy

๐Ÿ“œ Pre-Request Scripts ฮฒ: Snippets of code associated with a request that are executed before the request is sent.


  • Include timestamp in the request headers
  • Send a random alphanumeric string in the URL parameters

Requests with Pre-Request Scripts are indicated in History entries

๐Ÿ“„ API Documentation: Create and share dynamic API documentation easily, quickly.


  1. Add your requests to Collections and Folders
  2. Export Collections and easily share your APIs with the rest of your team
  3. Import Collections and Generate Documentation on-the-go

โŒจ๏ธ Keyboard Shortcuts: Optimized for efficiency.


  • Send Request Ctrl + G
  • Save to Collections Ctrl + S
  • Copy Request Link Ctrl + K
  • Reset Request Ctrl + L

๐ŸŒŽ i18n ฮฒ: Experience the app in your own language.

  1. Scroll down to the footer
  2. Click "Choose Language" button
  3. Select your language from the menu

Keep in mind translations aren't available for all source and target language combinations

To provide a localized experience for users around the world, you can add you own translations.

  • Add a new locale in lang/

    Example: lang/es-ES.js

  • Mention code, name, iso and file in nuxt.config.js


    i18n: {
      locales: [{
        code: 'es',
        name: 'Espaรฑol',
        iso: 'es-ES',
        file: 'es-ES.js'

All i18n contributions are welcome to i18n branch only!

๐Ÿ“ฆ Add-ons: Official add-ons for Postwoman.

  • Proxy ฮฒ - A simple proxy server created for Postwoman

  • CLI ฮฒ - A CLI solution for Postwoman

  • Browser Extensions - Browser extensions that simplifies access to Postwoman

    Firefox Firefox (GitHub) ย |ย  Chrome Chrome (GitHub)

    Extensions fixes CORS issues.

Add-ons are developed and maintained under Official Postwoman Organization.

To find out more, please check out Postwoman Wiki.

Demo ๐Ÿš€ Website

Usage ๐Ÿ’ก

  1. Specify your request method
  2. Type in your API URL and path
  3. Send request
  4. Get response

You're done!

Built with ๐Ÿ”ง

  • Chromium - Thanks for being so fast!
  • HTML - For the web framework
  • CSS - For styling components
  • JavaScript - For magic!
  • Vue - To add to the JavaScript magic!
  • Nuxt - To add to the Vue magic!

Developing ๐Ÿ‘ท

Use a browser based development environment:

Open in Gitpod

Or, with local development environment:

  1. Clone this repo with git.
  2. Install dependencies by running npm install within the directory that you cloned (probably postwoman).
  3. Start the development server with npm run dev.
  4. Open development site by going to http://localhost:3000 in your browser.

Or, with docker-compose:

  1. Clone this repo with git.
  2. Run docker-compose up
  3. Open development site by going to http://localhost:3000 in your browser.

Docker ๐Ÿณ Docker Cloud Build Status

docker pull liyasthomas/postwoman

docker run -p 3000:3000 liyasthomas/postwoman:latest

docker build -t postwoman:latest

Releasing ๐Ÿท๏ธ

  1. Clone this repo with git.
  2. Install dependencies by running npm install within the directory that you cloned (probably postwoman).
  3. Build the release files with npm run build.
  4. Find the built project in ./dist.

Contributing ๐Ÿฐ

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

Continuous Integration ๐Ÿ’š Travis Build Status

We use Travis CI for continuous integration. Check out our Travis CI Status.

Versioning ๐Ÿ”– GitHub release

This project is developed by Liyas Thomas using the Semantic Versioning specification. For the versions available, see the releases on this repository.

Change log ๐Ÿ“

See the CHANGELOG file for details.

Authors ๐Ÿ”ฎ

Lead Developers

Testing and Debugging


Liyas Thomas
Liyas Thomas

๐Ÿ’ป ๐ŸŽจ
John Harker
John Harker

๐Ÿ’ป ๐ŸŽจ
Nicholas La Roux
Nicholas La Roux

Thomas Yuba
Thomas Yuba

Nick Palenchar
Nick Palenchar

Andrew Bastin
Andrew Bastin



Jacob Anavisca
Jacob Anavisca

Nityananda Gohain
Nityananda Gohain

Hossein Nedaee
Hossein Nedaee

James George
James George


See the list of contributors who participated in this project.


Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]



Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

License ๐Ÿ“„

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements ๐Ÿ™

  • Hat tip to anyone whose code was used
  • Inspirations:


Preview Markdown code






Happy Coding โค๏ธŽ

You canโ€™t perform that action at this time.