Skip to main content

Testrail

TestRail is a web-based test case management tool that helps QA and development teams organize test cases, plan test runs, and track results. This connector uses the TestRail API to read test management data such as projects, suites, cases, runs, and results into Nexla, and to create or update cases, runs, and results in TestRail.

Testrail icon

Power end-to-end data operations for your Testrail API with Nexla. Our bi-directional Testrail connector is purpose-built for Testrail, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Testrail or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Testrail workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating a TestRail credential, you need a TestRail account, your instance URL, and a TestRail API key. TestRail authenticates API requests with HTTP Basic authentication, using your TestRail email address as the username and an API key (or your account password) as the secret.

To obtain your TestRail credentials, follow these steps:

  1. Ask a TestRail administrator to enable the API for your instance. In TestRail, the administrator navigates to Administration > Site Settings, opens the API tab, selects Enable API, and saves the settings. The API must be enabled before any API request will succeed.

  2. Sign in to your TestRail instance, click your profile name in the top-right corner, and select My Settings.

  3. Open the API Keys section, click Add Key, then click Generate Key. TestRail displays the generated key only once, so copy it immediately and store it securely; you cannot view it again later.

  4. Note your TestRail instance URL (for example, https://your-domain.testrail.io). This is the base URL used for all API requests.

Using an API key rather than your account password lets you embed authentication details in automation without exposing your password, and lets you revoke access at any time by deleting the key under My Settings. If you prefer, TestRail also accepts your account password in place of the API key, but an API key is recommended.

Authenticate

Credentials required

FieldRequiredSecretDescription
EmailYesNoEmail address of the TestRail user.
API KeyYesYesTestRail API key (or account password).
Base URLYesNoTestRail instance URL, e.g. https://your-domain.testrail.io

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter the email address of your TestRail user in the Email field. This value is sent as the username for HTTP Basic authentication.

  4. Enter your TestRail API key in the API Key field. This is the key you generated under My Settings > API Keys in Prerequisites. You may supply your account password here instead, but an API key is recommended.

  5. Enter your TestRail instance URL in the Base URL field, for example https://your-domain.testrail.io. Nexla uses this value to construct the API endpoint URLs for your instance.

    If an API key is compromised, revoke it by deleting it under My Settings > API Keys in TestRail and generate a new one. The API must be enabled by an administrator under Administration > Site Settings for these credentials to work.

    For more information about API access, authentication, and available endpoints, see the TestRail API Reference.

  6. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Testrail connector tile, then select the credential that will be used to connect to the TestRail instance, and click Next; or, create a new Testrail credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common TestRail endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

[Rest API] List Users

This endpoint template configures the data source to fetch data from the TestRail List Users endpoint. Retrieve users.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Roles

This endpoint template configures the data source to fetch data from the TestRail List Roles endpoint. Retrieve roles.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Projects

This endpoint template configures the data source to fetch data from the TestRail List Projects endpoint. Retrieve projects.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Priorities

This endpoint template configures the data source to fetch data from the TestRail List Priorities endpoint. Retrieve priorities.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Plans

This endpoint template configures the data source to fetch data from the TestRail List Plans endpoint. Retrieve plans for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Runs

This endpoint template configures the data source to fetch data from the TestRail List Runs endpoint. Retrieve runs for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Result Fields

This endpoint template configures the data source to fetch data from the TestRail List Result Fields endpoint. Retrieve result fields.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Suites

This endpoint template configures the data source to fetch data from the TestRail List Suites endpoint. Retrieve suites for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Templates

This endpoint template configures the data source to fetch data from the TestRail List Templates endpoint. Retrieve field templates for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Tests in Run

This endpoint template configures the data source to fetch data from the TestRail List Tests in Run endpoint. Retrieve tests for a run.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Sections

This endpoint template configures the data source to fetch data from the TestRail List Sections endpoint. Retrieve sections for a project and suite.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Case Statuses

This endpoint template configures the data source to fetch data from the TestRail List Case Statuses endpoint. Retrieve case statuses.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Milestones

This endpoint template configures the data source to fetch data from the TestRail List Milestones endpoint. Retrieve milestones for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Datasets

This endpoint template configures the data source to fetch data from the TestRail List Datasets endpoint. Retrieve datasets for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Configs

This endpoint template configures the data source to fetch data from the TestRail List Configs endpoint. Retrieve configurations for a project.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Case Types

This endpoint template configures the data source to fetch data from the TestRail List Case Types endpoint. Retrieve case types.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Case Fields

This endpoint template configures the data source to fetch data from the TestRail List Case Fields endpoint. Retrieve case fields.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

[Rest API] List Cases

This endpoint template configures the data source to fetch data from the TestRail List Cases endpoint. Retrieve test cases for a project and suite.

  • Nexla calls the corresponding TestRail API endpoint and organizes the returned records into one or more Nexsets. Some TestRail endpoints require a project, suite, run, or plan identifier as a parameter; provide any required identifiers when configuring the endpoint.

For details about response fields, filters, and pagination for this endpoint, see the TestRail API Reference.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

TestRail data sources can also be manually configured to ingest data from any valid TestRail API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Testrail data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Testrail destination, and select the Send to Destination option from the menu. Select the Testrail connector from the list of available destination connectors, then select the credential that will be used to connect to the TestRail instance, and click Next; or, create a new Testrail credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common TestRail endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

[Rest API] Add Case

This endpoint template sends records from a Nexset to the TestRail Add Case endpoint. Create a new test case in the specified section.

  • Each record from your Nexset is sent as a JSON request body to the corresponding TestRail API endpoint. Ensure each record contains the fields TestRail requires for this operation, along with any project, section, run, or case identifiers the endpoint expects.

For details about the required request body and available fields for this endpoint, see the TestRail API Reference.

[Rest API] Update Case

This endpoint template sends records from a Nexset to the TestRail Update Case endpoint. Update an existing test case.

  • Each record from your Nexset is sent as a JSON request body to the corresponding TestRail API endpoint. Ensure each record contains the fields TestRail requires for this operation, along with any project, section, run, or case identifiers the endpoint expects.

For details about the required request body and available fields for this endpoint, see the TestRail API Reference.

[Rest API] Add Run

This endpoint template sends records from a Nexset to the TestRail Add Run endpoint. Create a new test run for a project.

  • Each record from your Nexset is sent as a JSON request body to the corresponding TestRail API endpoint. Ensure each record contains the fields TestRail requires for this operation, along with any project, section, run, or case identifiers the endpoint expects.

For details about the required request body and available fields for this endpoint, see the TestRail API Reference.

[Rest API] Add Result for Case

This endpoint template sends records from a Nexset to the TestRail Add Result for Case endpoint. Add a test result for a specific case in a run.

  • Each record from your Nexset is sent as a JSON request body to the corresponding TestRail API endpoint. Ensure each record contains the fields TestRail requires for this operation, along with any project, section, run, or case identifiers the endpoint expects.

For details about the required request body and available fields for this endpoint, see the TestRail API Reference.

[Rest API] Add Results for Cases

This endpoint template sends records from a Nexset to the TestRail Add Results for Cases endpoint. Bulk-add test results for multiple cases in a run.

  • Each record from your Nexset is sent as a JSON request body to the corresponding TestRail API endpoint. Ensure each record contains the fields TestRail requires for this operation, along with any project, section, run, or case identifiers the endpoint expects.

For details about the required request body and available fields for this endpoint, see the TestRail API Reference.

Manual configuration

TestRail destinations can also be manually configured to send data to any valid TestRail API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

TestRail APIs expect JSON in the request body for create and update operations. Include any required identifiers (such as the project, section, run, or case ID) as expected by the target endpoint.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured TestRail endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the TestRail endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.