- Testsigma REST APIs
Manage Environments
Elements
Test Plans
Upload Files
Get Project Wide Information
Upload & Update Test Data Profile
Fetch Test Results (All Levels)
Trigger Multiple Test Plans
Trigger Test Plans Remotely & Wait Until Completion
Run the Same Test Plan Multiple Times in Parallel
Schedule, Update & Delete a Test Plan Using API
Update Test Case Results Using API
Create and Update Values of Test Data Profile Using REST API
Rerun Test Cases from Run Results using API
Salesforce Metadata Refresh Using API
Manage Test Steps Using API
Manage Test Steps Using API
With Testsigma, you can create, update, retrieve, and delete test steps in a test case using the REST API. You can also perform bulk operations for efficiency and search NLP templates for step creation.
Prerequisites
Before you begin, ensure you have:
- testCaseId: You can find it in the URL of the test case in the Testsigma app.
- previousStepId: The ID of the step after which the new step should be added. You can get it from the response of List Test Case Steps Using the REST API.
- templateId: The ID of the NLP template that defines the action. You can get it by searching with the Search NLP Templates Using REST API.
Create a Test Step Using API
This endpoint allows users to create one step in a test case.
| Request Type | POST |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps |
| Authorization | Bearer <API_Token> Same as the Testsigma API key mentioned above. |
| Request Body Type (JSON) | Raw |
| Payload | { |
| Response Body(JSON) | { |
Request Fields:
- testCaseId: The ID of the test case where you want to add the new step.
- templateId: A unique identifier for the type of action you're performing (e.g., navigating to a URL).
- elementId: The ID of the element associated with this step (required for templates with ${ui-identifier} in grammar).
- previousStepId: The ID of the step that the new step should follow.
- text: The value of the step's action, in this case, the URL to navigate to.
-
type: The type of the test step. We support both:
- NLP_TEXT: For Natural Language Processing text steps.
- STEP_GROUP: For a group of multiple steps executed together.
- For a NLP_TEXT step, templateId is mandatory and stepGroupId should be set to null in the payload.
- For a STEP_GROUP step, stepGroupId is mandatory and templateId should be set to null in the payload.
Response Body Fields
- id: A unique numerical identifier for the newly created test step.
- action: A human-readable description of the action the test step performs, such as "Navigate to https://www.google.com".
-
type: The type of the test step. We support both:
- NLP_TEXT: For Natural Language Processing text steps.
- STEP_GROUP: For a group of multiple steps executed together.
Create Multiple Test Steps Using API
This endpoint allows users to create multiple test steps in a single request.
| Request Type | POST |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/bulk |
| Authorization | Bearer <API_Token> Same as the Testsigma API key mentioned above. |
| Request Body Type (JSON) | Raw |
| Payload | { |
| Response Body(JSON) | Returns an array of newly created test step objects. |
Request Fields:
- testCaseId: Target test case ID
- steps: Array of step objects
- templateId: NLP template ID for the step
- elementId: The ID of the element associated with this step (required for templates with ${ui-identifier} in grammar).
- text: Step input or parameter value
-
type: The type of the test step. We support both:
- NLP_TEXT: For Natural Language Processing text steps.
- STEP_GROUP: For a group of multiple steps executed together.
- For a NLP_TEXT step, templateId is mandatory and stepGroupId should be set to null in the payload.
- For a STEP_GROUP step, stepGroupId is mandatory and templateId should be set to null in the payload.
When you create multiple steps in a single request, the system respects the order in which they are listed in the steps array. All of the new steps are inserted immediately after the step identified by previousStepId. You do not need to manage the numbering manually because Testsigma automatically calculates and assigns the correct step order for each new entry.
Retrieve a Test Step Using API
This endpoint allows users to fetch a specific test step by ID.
| Request Type | GET |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/{id} |
| Path Parameter | id – Identifier of the Test Step |
| Response Body (JSON) | { |
Response Fields
- id: Step ID
- action: Action description
- type: Step type
- stepOrder: Execution order in the test case
- testCaseId: Parent test case ID
- templateId: Associated template
List Test Case Steps Using API
This endpoint retrieves all steps of a specific test case in their execution order.
| Request Type | GET |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/find_all/{testCaseId} |
| Path Parameter | testCaseId: Identifier of the test case |
| Response Body (JSON) | Returns an array of test step objects in step sequence order |
Search NLP Templates Using API
This endpoint allows users to search NLP templates for creating steps.
| Request Type | GET |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/nlp/{applicationType}/templates/{searchText} |
| Path Parameter | applicationType: WebApplication, MobileWeb, IOSNative, AndroidNative, Rest, Salesforce searchText: Keywords used to search for templates |
| Response Body (JSON) | [ |
Response Fields:
- id: Unique identifier of the created test step
- keyword: Keyword associated with the step (e.g., click)
- grammar: NLP grammar expression for the step
- action : Action executed by the step
Update a Test Step Using API
This endpoint allows users to update an existing test step.
| Request Type | PUT |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/{id} |
| Authorization | Bearer <API_Token> |
| Path Parameter | id: The test step ID that needs to be updated. |
| Request Body Type (JSON) | Raw |
| Payload | { |
| Response Body(JSON) | { |
Request Fields:
- testCaseId: Target test case ID where the step will be created
- templateId: NLP template ID for the step
- elementId: The ID of the element associated with this step (required for templates with ${ui-identifier} in grammar).
- text: Step input or parameter value
-
type: The type of the test step. We support both:
- NLP_TEXT: For Natural Language Processing text steps.
- STEP_GROUP: For a group of multiple steps executed together.
- For a NLP_TEXT step, templateId is mandatory and stepGroupId should be set to null in the payload.
- For a STEP_GROUP step, stepGroupId is mandatory and templateId should be set to null in the payload.
Response Fields:
- id: Unique identifier of the created test step
- action: Action description generated from the step (e.g., Enter password…)
-
type: The type of the test step. We support both:
- NLP_TEXT: For Natural Language Processing text steps.
- STEP_GROUP: For a group of multiple steps executed together.
Delete a Test Step Using API
This endpoint allows users to delete a specific test step from a test case.
| Request Type | DELETE |
|---|---|
| Endpoint | https://app.testsigma.com/api/v2/test_steps/{id} |
| Path Parameter | id: Specifies the unique identifier of the test step that should be deleted. |
| Request Body | None |
| Response Body | Status Code: 204 No Content Body: Empty response body |