The word “open” gets used in many different ways across the API community. Open source, open APIs, open for business all leaves the concept very open for interpretation. At Postman we feel strongly about using, creating, and contributing to open source software, as we understand the role it plays as a companion for more specialized commercial offerings. Doing business in the 2020s doesn’t mean you are a open or closed software maker or consumer, it means you have found the right balance of both across your lines of business, leveraging and contributing to the best of breed open source solutions, while also sensibly investing in your own secret sauce that helps you successfully operate, grow, and scale your entire platform. At Postman, to perpetually strike this balance we’ve established our own open source philosophy which builds upon and contributes to open source software and standards alongside of our own offerings, producing just the right mix needed for finding success in the API economy.
The Postman Open Source Projects
We feel that every company’s open source strategy should begin with a healthy founding of your own open source projects. We have six separate open source projects we want to share with you as you developer your own API life cycle for delivering public and private APIs across your organization.
- Newman – Command-line tool for running and testing a Postman Collection.
- Postman Collections Format – Data format that encapsulates Postman API requests.
- Postman Collection SDK – SDK to quickly unlock the power of Postman Collections Format using JavaScript.
- Postman Code Generators – Convert Postman collections to usable code in more than 20 different programming languages.
- Postman Runtime – The core of Postman that helps to execute Postman API requests, scripts, and tests.
- Learning Center – The Postman Learning Center has all of the resources you need to ramp up quickly and extend your skills.
Newman and collections are the core functionality of the Postman platform, as well as the life cycle of your APIs. It is important to us that these gears are openly available for you to throughout your infrastructure—no restrictions. We feel this way about the entire API life cycle which is why we invest in a collection SDK, code generators, even our run-time. Most importantly we feel like our knowledge and experience across the API life cycle should also be openly available to our community as the learning center.
Open Source Software Postman Uses
Beyond the core open source projects Postman is the steward of, we are proud users of leading open source software solutions. Actively building our website, application, and other projects on top of proven open source source software solutions. Here are the open source projects that Postman feels the most passionate about, and use across the platform today.
- SailsJS – Sails helps us quickly build Node.js apps—especially when it comes to their auto-generated REST APIs.
- Gatsby – The Postman Learning Center is built using Gatsby v2, greatly improving our developer experience. Community co tributions are welcomed!
- Electron – Electron helps us build cross-platform applications (HTML, CSS, and JavaScript) with ease.
- Handlebars – The new Postman Visualizer feature is one place where you can use Handlebars to visualize your API responses.
- JSON Web Tokens (JWT) – This open, industry-standard method for representing claims securely between two parties is supported right in Postman and is used by many of our customers.
- Bootstrap – We use Bootstrap, the world’s most popular front-end component library, to help us build our front-end UI faster.
We feel that it is important to not just be a good steward of open source projects, but also be an active consumer, and when possible, contributor to open source software. As we said before, striking the balance between delivering open source, consuming open source, and developing cutting edge commercial offerings is where we feel the biggest value from being open emerges—giving Postman the edge when it comes to developing the features developers are needing.
Postman Supports Open API Specifications
Expanding on what is open source, we don’t want to forget our commitment to supporting the open API specifications we all depend upon. There are three open source API specifications that we support as part of how Postman works, ensuring Postman works seamlessly with other leading API infrastructure, services, and tooling across the landscape.
- OpenAPI – Postman supports the latest OpenAPI specification as well as Swagger 1.0/2.0.
- RAML – The RESTful API Modeling Language (RAML) has become a popular choice for designing APIs.
- GraphQL – Postman allows you to author and send GraphQL queries using the request body.
Postman is a platform for managing not just API consumption, but also for the delivery of APIs, and OpenAPI, RAML, and GraphQL are all proven ways of defining the surface area of your APIs in a machine (and human) readable way that can then be used across your API life cycle. It is important to use that Postman continues to be interoperable with leading, and even competing software solutions through our support of open API standards and specifications.
We Know Your API Strategy Depends On Open
We have published the Postman open source philosophy to make sure you know that we understand your API strategy depends on open source infrastructure, server and client tooling, as well specifications–because ours does too! We want you to know that we are your partner in not just interfacing with your API factory, but we are investing in the open gears and other tooling you will need to operate your factory at scale. It is important to use that you are able to confidently build out YOUR infrastructure using the best open source components as you can, while also being able o pay for premium services that help connect the dots across your API infrastructure in a way that moves your business forward.
In 2020 being open in the API space isn’t just about being 100% open source with your code. It is about having a strong open source philosophy that reflects that needs of the API community and your business. Supporting existing open source projects. Investing in and being stewards of strong open source tooling, while also making sure a diverse suite of open standards and specifications are available to the community, and are baked into both open and proprietary tooling. The open in all of this is the grease in the wheels of our factory, while the features we offer for a fee help ensure that we all stay in business, continuing to be able to innovate and grow, making sure we are able to meet the next generation needs of both of our customers.
Postman provides a wide range of functions and features to assist with API development, testing, and collaboration. Here are some commonly used functions in Postman:
-
Creating and Managing Requests: Postman allows you to create API requests by specifying the request method, URL, headers, parameters, and body. You can manage and organize requests within collections, including creating folders, adding descriptions, and reordering requests.
-
Request and Response Visualization: Postman provides a user-friendly interface to view and analyze request and response data. It supports syntax highlighting for various data formats such as JSON, XML, and HTML, making it easier to understand and validate the data.
-
Environment and Variables: Postman allows you to define variables and environments. Variables enable you to store and reuse dynamic values across requests, making them flexible and easy to maintain. Environments provide sets of variables specific to different environments (e.g., development, staging, production).
-
Tests and Assertions: Postman supports writing test scripts using JavaScript for automated API testing. You can write assertions to validate response status codes, headers, response bodies, and more. Postman's testing framework allows you to assert and validate different aspects of API responses.
-
Pre-request Scripts: Postman enables you to execute scripts before sending API requests using pre-request scripts. These scripts can be used to dynamically generate values, manipulate data, or set variables based on specific conditions.
-
Collection Runner: The Collection Runner allows you to execute a series of requests in a collection. It enables you to perform data-driven testing by iterating over multiple sets of data or environments. You can configure iterations, delays, and data sources for more comprehensive testing.
-
Mock Servers: Postman allows you to create mock servers for simulating API responses without a live backend. Mock servers are useful during development, allowing frontend developers to work independently by providing simulated API responses.
-
Documentation Generation: Postman can automatically generate documentation for your APIs based on your requests and collections. It provides a simple way to share API specifications and details with stakeholders.
-
Collaboration and Teamwork: Postman offers collaboration features such as sharing collections, collaborating on requests, and commenting on specific requests or collections. It also supports version control integration to manage changes and updates effectively.
-
Integration and Automation: Postman integrates with various tools and services, including version control systems (e.g., Git), CI/CD platforms (e.g., Jenkins), and API management solutions. It provides options for integrating with these tools to automate API testing and deployment processes.