EXPLORE CORE FEATURES

Store definition of request items in a project
Separate request data between project and its request items
Store project file to disk
Define global project data to use it with request items
When working with HttpMaster, you will most of the time manage project properties and properties of the request items contained inside the project. Project properties offer global options to customize HTTP requests that will be executed; changes to this properties affect all project request items. Project can be saved to disk as a file with 'hmpr' extension and is stored internally in XML format.
HttpMaster project
Define various HTTP data to customize requests
Define global HTTP headers
Create global URL data for different environments
Manage URL encoding, HTTP redirect, request encoding, timeouts, and more
Project contains a lot of options which can be used to fine-tune generated HTTP requests. These include request encoding, global URL and query string, global HTTP request headers, and couple of advanced properties like URL encoding and ability to completely disable execution data storing which can be useful if you want executions to be completed as fast as possible.
Broad set of HTTP properties
Create parameters of various types
Define multi-value parameters to simulate variations of input data
Create parameters with global values for reuse
Obtain parameter values from disk files
In project properties you can also define parameters of different data types and different generation types. Parameters enable you to include dynamic data with the request items; this can be useful to generate multiple requests based on the parameter data or to create global reusable values. All defined parameters can be used with request item properties, for example, with URL of the request item.
Parameters
Validate response data
Create global project validations of various types for reuse
Combine validations in advanced logical expressions
Control execution according to the validation outcome
By default each executed request is validated with default system validation. Default system validation monitors returned HTTP status codes and determines execution result according to this status code. However, you can define custom validations in project properties and then use this project validations to define custom validation logical expression for each request item. There are different types of custom validations available; majority of them perform some validation of the response body.
Response data validation
Define chaining to use data from the previous request
Create global project chaining items of various types for reuse
Use chaining items in request item properties to create batches of chained requests
Obtain data from the previous request with JSONPATH, XPATH, or regular expression
Project enables you to define chaining items of different types which can then be used in request items to include some data from the previous request with the next request. You can use these project chaining items in request item properties, for example, inside request item URL. This will dynamically insert data from the previous request in places where chaining is used. In such a way, you can create a chain of requests where each request will use some data from the previous request.
Request chaining
Upload request data of various content types
Post HTML form, including files.
Send JSON, XML, or text data.
Upload any disk file as binary array.
HttpMaster also has a rich support for data upload available; it enables you to post text data (JSON, XML, etc.), binary data of particular file, or multipart form data which can include mix of text data items and disk files. Request body data for upload can also be automatically built from an existing HTML content obtained from some internet address (URL) or disk file.
Extensive data upload support
Parse existing HTML content to create request body
Obtain HTML data from disk or URL
Build HTML form submit, JSON object, or XML document
Create project parameters for selected data elements
If you have to test particular website with various options of input data, you can build request body from an existing HTML content obtained from URL or disk file. HttpMaster will detect all HTML input elements inside FORM tags and will display them in the list where you will be able to include them in the request body. For all HTML elements with multiple options (for example, radio buttons or SELECT elements), HttpMaster will obtain all possible values from HTML content and will enable you to automatically create multi-value parameter with obtained data values.
Request data builder
Specify credentials or obtain authorization data
Specify credentials data for common HTTP authentication schemes
Obtain authorization data with OAuth
Utilize special global variables to use obtained authorization data during the execution
A lot of web applications require some kind of authentication from their users. HttpMaster allows you to add credentials to requests or to obtain authorization from third-party authentication provider when accessing external web applications. You can utilize support for classic OAuth workflow to obtain authorization code and access token and use them as global variables during the subsequent execution of request items.
Authentication and authorization
Execute selected request items
Execute selected request items under different environments
Perform standard or plain execution according to your needs
Store complete execution data to disk
HttpMaster offers powerful execution capabilities and allows you to execute only opened request item, only selected request items, or all project request items. It is also possible to create execution groups and execute only request items that are part of the particular execution group. During the execution process you can monitor executions progress and status of each request item. HttpMaster also allows complete execution data to be saved to external file with 'hmex' extension. You can reopen this file anytime later to review execution data.
Request item execution
Manage execution groups and conditional execution
Create execution groups for advanced execution scenarios
Define conditional execution of request items inside the group
Execute groups inside the application or with the command line interface
Selecting the same set of request items for execution again and again can become a tedious and time-consuming tasks. If you have to execute the same request items many times, try execution groups. Execution groups are powerful feature for simplified execution of multiple request items and allow you to specify custom execution order for every request item contained in the group. Execution groups also support conditional execution of request items based on the execution result of some other request item in the same group. For example, you can specify to execute certain request item only if some other request item was successfully executed.
Execution groups
View and manage complete execution data
Inspect complete execution data, including headers, cookies, response body, and more
View response data with several pretty viewers
Create PDF report, export response body, or prepare JSON/XML file with execution results
Once the execution of particular request item is completed, you can open and view its execution results. Various execution data is available for review, including HTTP headers, cookies, response data, size, duration, etc. HttpMaster also features several pretty viewers for user-friendly display of response data, including XML, JSON, HTML, CSS, and more. Majority of pretty viewers support code folding for expanding/collapsing selected code sections. Response data can be further manipulated, for example, export response body to an external file, search data for particular phrase, create PDF report, and more.
Comprehensive data review
Utilize additional tools
Use basic request tool for ad hoc HTTP requests
Automate project execution with command line interface
Leverage graphical wizard to quickly build CLI commands
HttpMaster also offers some additional tools, for example, ad hoc HTTP request tool. If you need to quickly execute a simple HTTP request, creating project and request item might not be the best option. In such situations, you can use this ad hoc request tool which also supports complete execution data review and management. Additionally, you can utilize command line interface to automate execution of projects. Command line execution results are stored in special files which can be opened in HttpMaster for complete execution data review.
Additional tools
Import and use OpenAPI data
Use OpenAPI data to create project for your REST API
Update existing project with new or changed OpenAPI operations
Customize options for creating projects from OpenAPI data
If you are working on a REST API and you have created OpenAPI (Swagger) data for it, you can import this definition and HttpMaster project with corresponding request items will be created automatically. In such a way, you don't need to create project and request items from scratch; creating new project could be a laborious task, especially if your REST API defines a lot of endpoints. Simply import your OpenAPI file and save some time.
Import OpenAPI data
Prepare and execute Curl commands
Create Curl commands from project request items
Copy created commands or execute them
Customize extensive set of options for creating Curl commands
If you would like to generate requests without executing them immediately, you can prepare Curl commands from project request items and execute them with Command Prompt, PowerShell, or any other command-line tool. There are also plenty of options available to customize prepared Curl commands.
Curl export