Introduction
Welcome to the Performance section of the BlazeMeter API reference! This section will cover the APIs used for creating, updating, and running performance tests, as well as getting the test results, handling shared folders, scheduling tests, and creating private locations to run those tests.
This API reference uses the following conventions for your convenience:
- Language bindings are available in cURL. You can view the code examples and JSON responses in the dark area to the right.
- Links to the API explorer are provided in the following format: API Explorer: /explorer. To use the API explorer, you must first log in to a.blazemeter.com to establish authentication. If you need an account, signup for a free account (first and last name, and a valid email address are required).
Overview
Your Account provides access to different levels of the API:
- Workspaces: Workspaces are the highest level container within an account. They contain projects which in turn contain tests. Workspaces also contain resources such as Dedicated IPs, Private Locations, Application Performance Monitoring (APM) credentials, shared folders, and usage alerts. A user with access to a workspace can access any project in the workspace. Each workspace has its own ID, known as a
workspaceId
, which will be required for use in the APIs. - Projects: An organizational construct containing tests and their results. Think of it as a single-dimensional tagging system with each test and the test's results associated with one (and only one) project. Each project has its own ID, known as a
projectId
, which will be required for use in the APIs. - Tests: Tests are test objects configured with specific parameters and files. Think of a test as the "recipe" for test which can be run many times. Each test has its own ID, known as a
testId
orcollectionId
, that will be required for use in the APIs. ThetestId
is for the Tests object, while thecollectionId
is for the Collections and Multi-Tests objects. - Masters: This is the construct that manages the runs of a test and contains the test run's results. Think of the master as one instance of using the recipe. Each master has its own ID, known as a
masterId
, which will be required for use in the APIs and is used for the Masters object.
The following figure illustrates the relationship between the levels.
Basics
Request Format
All requests to the API are sent over HTTPS and use the following base URL:
https://a.blazemeter.com/api/v4
Test data related requests use the following base URL:
https://tdm.blazemeter.com/api/v1
Response Format
{
"limit": ...,
"skip": ...,
"total": ...,
"hidden": ...,
"api_version": ...,
"error": {...} or null,
"result": {...} or [...]
}
Responses are returned as JSON data in the format shown to the right. A description of the attributes can be found below:
Attributes
-
limit
integerResult List Only
The limit imposed on the number of results returned. See the Pagination section for more details
-
skip
integerResult List Only
The number of results to skip. See the Pagination section for more details
-
total
integerResult List Only
The total number of results that are available
-
hidden
integerResult List Only
The total number of hidden results. No longer used
-
api_version
integerThe version of the API used. Currently we are on version
4
-
error
object or nullDetails any errors returned (includes the response code and message generated). Will be
null
if no error is returned -
result
object or arrayThe result of the requested information from the API. All of the attribute tables will only describe this value, as it's the only part that changes with each API request
Reading the Attribute Tables
Below is a list of the various tags that are present in the attribute tables and what they represent:
Attribute Tag | Description |
---|---|
required |
This indicates that this attribute is required for any POST requests |
read-only |
This indicates that this attribute is not edittable (either through POST, PATCH, or PUT) |
Result List Only |
Indicates that this attribute appears for APIs that return lists |
Multi Test Only |
Indicates that this attribute is used for multi test or collection object only |
Test Only |
Indicates that this attribute is used for test object only |
Private Cloud Only |
Indicates that this attribute is only available to Private Cloud |
Shared Type Only |
Indicates that this attribute is only available to Shared private location type |
Legacy Only |
Indicates that this attribute is only available for legacy BlazeMeter users |
Exclusive |
Indicates that this attribute cannot be used in conjunction with another Exclusive attribute |
Authorization Using Basic Authentication
Authorization
curl 'https://a.blazemeter.com/api/v4/user' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"email": "my.name@my_email.com",
"access": 1522676762,
"login": 1521724222,
"firstName": "my",
"lastName": "name",
"timezone": 0,
"enabled": true,
"roles": [
"user",
"new-billing",
"authenticated"
]
}
}
}
API Explorer: /user
To use the BlazeMeter API, pass your BlazeMeter API key using Basic Authentication (Basic Auth) credentials. These credentials contain a Key ID and a Secret Key:
id:secret
For example: f817e22f1526b048799f75da:7641251982b983cfd92b5a25fa97cd3ee9e21920f21d8b14cd705831826935723f3033f0
All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail. In the code sample, replace 'api_key_id:api_key_secret'
with your credentials.
Create the API Key
Use the linked BlazeMeter article to create your API key.
Global Search
This search API is the backend for the Advanced Search UI in the Performance tab. In BlazeMeter's microservice architecture, each service owns its own data, and there are relationships between entities from different services. This endpoint provides a straightforward way to run search queries against the whole data model.
Search Globally
API Explorer: /search
Use this endpoint to search for entities such as accounts, workspaces, projects, users, tests, tags, and locations.
To receive the most recent information which entities and fields are supported in the search, make a GET call to the Search Metadata endpoint: GET https://a.blazemeter.com/api/v4/search/metadata to download search-metadata.json. This file covers the list of searchable entities, their fields, and relationships:
- Fields - For fields, it lists the type of field, and its "features". Features include "orderable" if the field is orderable.
- Root Entities - The Metadata flag “searchRoot“ is a Boolean that indicates whether the entity is searchable as root entity. For example, the "user" and "location" entities are not searchable as root; they can only be searched indirectly through tests or masters.
- Relationships - Which entities the entity is related to, the cardinality, and "features". Features include "ordering" (if we can order by fields of the related entity) and "filtering" (if we can filter by fields of the related entity).
- The list of types - Which operators are available for each data type.
Search Request Attributes
Search
curl 'https://a.blazemeter.com/api/v4/search' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{ "<em>attribute</em>": ["<em>value</em>"] }'
Run a Search Search POST Body (JSON)
{
"accountId": 12345,
"entity": "test-union",
"fields": [
"*",
"owner.*",
"project.*",
"locations.*",
"workspace.*",
"tags.*"
],
"workspaceId": null,
"filters": {
"$and": [
{
"name": {
"$ilike": "Nove"
}
}
]
},
"ordering": [
{
"updated": -1
}
],
"skip": 0,
"limit": 15
}
Attributes
-
entity
stringrequired
Defines the root entity to search for. Choose one of the following options:
"account"
"workspace"
"master"
"project"
"tag"
"test-union"
mdash; includes both tests and multi-tests
-
accountId
stringoptional
Specifies a search filter for either a single accountId (for example, 123 or [123]), a list of accountIds (for example, [123,456]), or use null to include all accountIds. Specifying [] results in an empty result set.
Some entities are not directly associated with an accountId, for example, a test entity is linked to a project, a project is linked to an organization, and an organization is linked to an account.
-
workspaceId
stringoptional
Specifies a search filter for a single workspaceId (for example, 123 or [123]) or a list of workspaceIds (for example, [123,456]). Specifying [] results in an empty result set.
-
fields
stringoptional
Defines the list of fields that you want to return from the root entity and related entities.
null
or[]
— Returns all root entity fields, including test name, test id, test type, and so on. Does not include second level fields, such as user name, last-updated-by email, project name, and so on. This is the default."fieldname"
— Defines the name of the specific field that you want to return from the root entity, such as name, id, or type."*"
— Returns all root entity fields."relationship.*"
or"relationship.attribute"
— Returns all root fields with the specific relationship. For example,"owner.*"
returns the test owner,"owner.firstName"
returns the owner's firstName, and so on. Use this for fields that are located in related entities, such as the user's firstName and lastName, or the project name. Select these fields by providing the name of the relationship.
-
download
Booleanrequired
The parameter defines whether you want to download your query results to your local client as a CSV file. The maximum number of results returned is 10,000 items.
-
format
stringoptional
Defines the result set format. Can be used together with distinct.
structured
— Retrieve root entity including related entities as nested JSON objects/arrays. Default.flat
— Fetches only related entities. For example, fetch all owners of tests. The selected fields must be from a single entity only. Ordering must be according to the selected field(s). This format flattens all nested JSON objects to a single object and is designed for UI drop down filters to show only relevant values.value
— for fetching single field values in array. This format is suitable for tags as those are plain values, but not owners, projects, locations (as we need both id and name for those). Only one field can be selected when using value format. It can also be used in ordering. This format is designed for UI drop down filters to show only relevant values.
-
distinct
stringoptional
Used in combination with the flat and value result formats (see there) to eliminate duplicates.
-
skip
numberoptional
Defines how many rows to skip from the response. Used together with limit.
-
limit
integeroptional
Defines the number of result rows to fetch. Default is 100. Use 0 to return the total count. Used together with Skip.
-
filters
stringoptional
Configures search filter criteria. A slightly modified Mongodb style query language is supported:
$or, $and, $nor, $not
— supported logical operators. The $not operator is more powerful than in Mongodb as it can be used as top level logical operator. It can also be used as Mongodb $not operator in field expressions.$eq, $ne, $lt, $lte, $gt, $gte, $between (plus an array value with two arguments), $in, $nin, $startswith, $endswith, $null (true/false value), $notnull (true/false value), $like, $ilike
— supported field expression operators.$eq
,$in
— Supported equality operators. $eq is a strict equals operator. For lists, use $in to filter by items inside the list.$ilike
operator — A case and diacritic insensitive search for string fields.
Example: To return ids that are greater than 100 and less than 500, use the following filter:
"filters": { "$and": [ { "id": { "$gt": 100 } }, { "id": { "$lt": 500 } } ] }
-
timeOffset
integeroptional
Defines a time offset in minutes to format the date fields. The provided value needs to take into account Daylight Saving Time. Used when exporting results as a CSV file (by setting the download attribute to true).
-
ordering
integeroptional
Configures sorting: 1 means ascending; -1 means descending. Provide an array of order definitions for fields. Supports ordering by root entity fields or related entity field through dot notation ("project.name") like
fields
does.Example: To order project names ascending and ids descending, use the following:
"ordering": [ { "project.name": 1 }, { "id": -1 } ]
-
platform
stringoptional
Filters results by BlazeMeter test type. Do not use together with
filterByActivePlatform
. Provide one of the following values:functional
performance
-
filterByActivePlatform
stringoptional
Set this to true to filter results by the BlazeMeter test type set in the user preferences. Do not use together with
platform
.
Search Response Attributes
Response 200 Created
{
"accountId": 12345,
"workspaceId": [
12345
],
"error": null,
"limit": 15,
"skip": 0,
"total": 1,
"result": [
{
"owner": {
"firstName": "Sasha",
"lastName": "Miller",
"displayName": "Sasha Miller",
"id": 1000005
},
"workspace": {
"accountId": 12345,
"name": "Workspace XYZ",
"id": 12345
},
"created": 1669390442,
"tagIds": [],
"locationIds": [
"us-east4-a"
],
"project": {
"name": "Project ABC",
"id": 12345,
"workspaceId": 12345
},
"testType": "taurus",
"type": "test",
"userId": 1600425,
"tags": null,
"duration": 1200,
"numVirtualUsers": 20,
"name": "East coast test November_25_4:34 PM",
"locations": [
{
"id": "us-east4-a",
"name": "US East (Virginia)",
"type": 0,
"refId": "us-east4-a",
"title": "US East (Virginia, Google)",
"provider": "Google Cloud Platform",
"workspaceIds": null
}
],
"id": 11841279,
"projectId": 12345,
"updated": 1669390471,
"numEngines": 1
}
],
"api_version": 4,
"request_id": "460d9b7978784"
}
Accounts
This section goes over how to handle account administration (i.e. changing user roles, enabling/disabling users, etc.).
To run these APIs, you will need the accountId
for the account you are wanting to handle the administration, and your user will need to have account admin access to run these APIs.
Add User to Account
Add User to Account
curl 'https://a.blazemeter.com/api/v4/accounts/123456/invitations' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"invitations":[{"inviteeEmail":"myName@myDomain.com","attachAutomatically":true,"accountRoles":["standard"],"workspacesId":[123456],"workspacesRoles":["tester"]}]}'
API Explorer: /accounts/{accountId}/invitations
To add a user, you need the accountId
of the account you want to add the user to and use an API key that has account admin access. For the sample code on the right, accountId
123456
has added user myName@myDomain.com
to the account automatically (skipping the invitation link process). To add a user to your account, replace the accountId
123456
with the accountId
of your account, the workspaceId
attribute with the workspaceId
of your workspace. This user will be given the account role of Standard and the workspace role of Tester.
Add User to Account Request Attributes
Add User to Account Add User to Account POST Body (JSON)
{
"invitations": [
{
"inviteeEmail": "myName@myDomain.com",
"attachAutomatically": true,
"accountRoles": [
"standard"
],
"workspacesId": [
123456
],
"workspacesRoles": [
"tester"
]
}
]
}
Attributes
-
invitations
arrayrequired
List of invitation details
-
inviteeEmail
stringrequired
The email address of the user you want to add
-
attachAutomatically
booleanDenotes if the use will be added automatically without the need to click the accept link in the invitation email
-
accountRoles
arrayrequired
An array of account roles that will be assigned to the user. Only ONE role should be assigned for any user, with the execption of the account
owner
role. The following are the available roles:admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
workspacesId
arrayThe
workspaceId
s you want to add the user to -
workspacesRoles
arrayAn array of workspace roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role
-
Add User to Account Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": [
{
"id": "5dc096abb7103a3c3f284b15",
"inviteeEmail": "myName@myDomain.com",
"token": "E0SC2x7U54bn",
"accountRoles": [
"standard"
],
"workspacesRoles": [
"tester"
],
"attachAutomatically": true,
"created": 1572902571,
"updated": 1572902571,
"accountId": 123456,
"inviteeUserId": 234567,
"invitedById": 123456,
"workspacesId": [
123456
],
"accountName": "My Account",
"acceptUrl": "https://a.blazemeter.com/api/v4/accounts/123456/invitations/5dc096abb7103a3c3f284b15/accept/E0SC2x7U54bn",
"rejectUrl": "https://a.blazemeter.com/api/v4/accounts/123456/invitations/5dc096abb7103a3c3f284b15/reject/E0SC2x7U54bn",
"invitingEmail": "adminUser@myDomain.com",
"invitingName": "Admin User"
}
],
"request_id": "5dc096ab2c16d"
}
Attributes
-
id
stringThe invitation ID for the inviation that was created
-
inviteeEmail
stringThe email address of the invited user
-
token
stringThe token used in the accept and reject URLs
-
accountRoles
arrayAn array of account roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
workspacesRoles
arrayAn array of workspace roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
attachAutomatically
booleanDenotes if the use will be added automatically without the need to click the accept link in the invitation email
-
created
integerThe timestamp the invitation was initially sent
-
updated
integerThe timestamp the invitation was changed
-
accountId
integerThe
accountId
you added the user to -
inviteeUserId
integerThe
userId
of the newly added user -
invitedById
integerThe
userId
of the user who added the new user -
workspacesId
arrayThe
workspaceId
s you want to add the user to -
accountName
stringThe name of the account the user was being added to
-
acceptUrl
stringThe URL that will accept the invitation (if used by the user that was invited)
-
rejectUrl
stringThe URL that will reject the invitation (if used by the user that was invited)
-
invitingEmail
stringThe email of the user that invited the new user
-
invitingName
stringThe name of the user that invited the new user
List Account Invitations
List Account Invitations
curl 'https://a.blazemeter.com/api/v4/accounts/123456/invitations' \
--user 'api_key_id:api_key_secret'
API Explorer: /accounts/{accountId}/invitations
To list the account invitations, you need the accountId
of the account you want to get the list of invitations and use an API key that has account admin access. For the sample code on the right, a list of invitations for accountId
123456
is provided. To get a list of invitations for your account, replace the accountId
123456
with the accountId
of your account.
Add User to Account Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 1,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [{
"id": "5eea89603e7ad67f5d35cbf7",
"inviteeEmail": "somebody@example.com",
"token": "4p8M0gseEpHr",
"accountRoles": [
"standard"
],
"workspacesRoles": [
"tester"
],
"attachAutomatically": false,
"created": 1592428896,
"updated": 1592428896,
"accountName": "Travis's Account",
"acceptUrl": "https://a.blazemeter.com/api/v4/accounts/130010/invitations/5eea89603e7ad67f5d35cbf7/accept/4p8M0gseEpHr",
"rejectUrl": "https://a.blazemeter.com/api/v4/accounts/130010/invitations/5eea89603e7ad67f5d35cbf7/reject/4p8M0gseEpHr",
"invitingEmail": "somebody@example.com",
"invitingName": "Travis Lloyd",
"workspaceNames": [
"Default workspace"
]
}],
"request_id": "5eea8978ea87b"
}
Attributes
-
id
stringThe unique identifier of the invitation
-
inviteeEmail
stringThe email of the invitee of the invitation (the person being invited)
-
token
stringThe token for the invitation
-
accountRoles
arrayThe account role being assigned to the invited user. The following are the available roles:
admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
workspacesRoles
arrayThe workspace role being assigned to the invited user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
attachAutomatically
booleanDenotes if the use will be added automatically without the need to click the accept link in the invitation email
-
created
integerThe timestamp for when the invitation was created
-
updated
integerThe timestamp for when the invitation was updated
-
accountName
stringThe account name of the account for the invitation
-
acceptUrl
stringThe URL for accepting the invitation. Must be used by the user invited
-
rejectUrl
stringThe URL for rejecting the invitation. Must be used by the user invited
-
invitingEmail
stringThe email of the user who created the invitation
-
invitingName
stringThe name of the user who created the invitation
-
workspaceNames
arrayThe name of the workspaces the invitee was invited to
Account User List
Account User List
curl 'https://a.blazemeter.com/api/v4/accounts/123456/users' \
--user 'api_key_id:api_key_secret'
API Explorer: /accounts/{accountId}/users
To return a list of the account users, an accountId
is required. The sample code returns a list of users within accountId
of 123456
. Use the actual ID value for the account to return the list of the users in your account.
Account User List Parameters
Parameters
-
roles
arrayThe roles you are wanting to get the list of account users for. Uses the following format:
roles[]=${role}
. These values can be any of the following:admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
excludeRoles
arrayThe roles you are wanting to exclude from the list of account users. Uses the following format:
excludeRoles[]=${role}
. These values can be any of the following:admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
enabled
booleanDenotes if you are wanting to get a list of account users that are enabled (if
true
) or disabled (iffalse
) -
textFilter
stringFilters the returned account user list to any account user emails that match the given string
Also see: Pagination
Account User List Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 123456,
"email": "owner@myDomain.com",
"displayName": "Owner Name",
"firstName": "Owner",
"lastName": "Name",
"login": 1573145246,
"access": 1573227166,
"roles": [
"admin",
"owner"
],
"enabled": true,
"lastAccess": 1573227166
},
{
"id": 234567,
"email": "standard@myDomain.com",
"displayName": "Standard Name",
"firstName": "Standard",
"lastName": "Name",
"login": 1506347921,
"access": 1520965347,
"roles": [
"standard"
],
"enabled": false,
"lastAccess": 1520965347,
"type": "account"
}
],
"request_id": "5dc58b956e81b"
}
Attributes
-
id
integerThe
userId
of the user -
email
stringThe email address of the user
-
displayName
stringThe display name of the user
-
firstName
stringThe first name of the user
-
lastName
stringThe last name of the user
-
login
integerThe timestamp of the last login to BlazeMeter
-
access
integerThe timestamp of the access to BlazeMeter
-
roles
arrayAn array of account roles that will be assigned to the user. Only ONE role should be assigned for any user, with the execption of the account
owner
role. The following are the available roles:admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
enabled
booleanDenotes if the user is enabled or disabled in the account
-
lastAccess
integerThe timestamp of the last access to BlazeMeter
Update Account User
Update Account User
curl 'https://a.blazemeter.com/api/v4/accounts/123456/users/123456' \
-X PUT \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"roles":["user_manager"],"enabled": false}'
API Explorer: /accounts/{accountId}/users/{userId}
To change a user's account role or disable or enable a user, an accountId
and userId
are required. The sample code changes the userId
of 123456
account role within accountId
of 123456
to user_manager
and disables the user in the account. Use the actual ID value for the account and user you are wanting to change.
Update Account User Request Attributes
Update Account User Update Account User PUT Body (JSON)
{
"roles": [
"user_manager"
],
"enabled": false
}
Attributes
-
roles
arrayAn array of account roles that will be assigned to the user. Only ONE role should be assigned for any user, with the execption of the account
owner
role. The following are the available roles:admin
- Account admin rolebilling
- Account billing rolestandard
- Account standard roleuser_manager
- Account user manager role -
enabled
booleanDenotes if the user is enabled or disabled in the account
Update Account User Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"roles": [
"user_manager"
],
"enabled": false,
"lastAccess": 1573229467,
"type": "account",
"displayName": "My Name",
"login": 1573145246,
"email": "my.name@domain.com"
},
"request_id": "5dc5939bd8286"
}
For a breakdown of the response attributes, see the Add User to Account Response Attributes section.
Account Engine Utilization Report
Account Engine Utilization Report
curl 'https://a.blazemeter.com/api/v4/accounts/123456/utilization-report' \
--user 'api_key_id:api_key_secret'
API Explorer: /accounts/{accountId}/utilization-report
To the engine utilizataion report for your account, you need the accountId
of the account to get the engine utilizataion report and use an API key that has account admin access. For the sample code on the right, a the engine utilizataion report for accountId
123456
is provided. To get the engine utilizataion report for your account, replace the accountId
123456
with the accountId
of your account.
Account Engine Utilization Report Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"workspaces": [
{
"id": 123456,
"name": "Default workspace"
}
],
"locations": {
"us-west1-a": {
"id": "us-west1-a",
"name": "US West (Oregon, Google)",
"engines": 1
},
"harbor-5b0323b3c648be3b4c7b23c8": {
"id": "harbor-5b0323b3c648be3b4c7b23c8",
"name": "Example Private Location",
"engines": 1
},
"us-east1-b": {
"id": "us-east1-b",
"name": "US East (South Carolina, Google)",
"engines": 1
}
}
},
"request_id": "5eeb989011d5f"
}
Attributes
-
workspaces
arrayThe list of workspace details that are currently running tests in the account
-
id
integerThe
workspaceId
of the workspace -
name
stringThe name of the workspace
-
-
locations
objectThe location details for all the currently running tests in the account
-
location Id
objectThe utilization details of the
location Id
-
id
stringThe
location Id
currently running test(s) in the account -
name
stringThe name of the location currently running test(s) in the account
-
engines
integerThe number of engines running test(s) in the location for the account
-
-
Terminate Masters in Account
curl 'https://a.blazemeter.com/api/v4/accounts/123456/terminate-masters' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"dryRun": false}'
API Explorer: /accounts/{accountId}/terminate-masters
To terminate all running masters in an account, you need the accountId
of the account and account admin access. For the sample code on the right, we are terminating all the running masters in accountId
123456
. To terminate all the masters in your account, replace the accountId
123456
with the accountId
of your account.
Terminate Masters in Account Request Attributes
Terminate Masters in Account Terminate Masters in Account POST Body (JSON)
{
"dryRun": false
}
Attributes
-
dryRun
booleanrequired
If
false
, the request is will terminate all masters in the given account. Iftrue
, the masters will not be terminated, but a list will be provided
Terminate Masters in Account Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
21509126,
21509125
],
"request_id": "5dc5a94bcc138"
}
Attributes
-
result
arrayContains a list of
masterId
s terminated (ifdryRun
=false
) or will be terminated (ifdryRun
=true
)
Customize Welcome Screen
Customize Welcome Screen
curl 'https://a.blazemeter.com/api/v4/accounts/123456' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"welcomeScreenLinkText":"Please follow these instructions","welcomeScreenLinkUrl":"https://www.blazemeter.com”}'
The account Welcome screen is visible to any user that accepts an invitation to an account without being added to a workspace.
You can customize the content of your Welcome screen, which disables BlazeMeter's default Welcome button and replaces the content with custom text and a hyperlink to a defined URL.
Customize Welcome Screen Attributes
Customize Welcome Screen Customize Welcome Screen PATCH Body (JSON)
{
"welcomeScreenLinkText": "Please follow these instructions",
"welcomeScreenLinkUrl": " https://www.blazemeter.com”
}
Attributes
-
welcomeScreenLinkText
stringrequired
Content of your Welcome message
-
welcomeScreenLinkUrl
stringrequired
Hyperlink that accompanies your Welcome message
Workspaces
This section goes over how to handle workspace administration (i.e. changing user roles, enabling/disabling users, etc.) for your BlazeMeter workspace.
To run these APIs, you will need the workspaceId
for the workspace you are wanting to handle the administration, and your user will need to have workspace manager access to run these APIs.
The Workspace Object
The Workspace Object
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "Default workspace",
"userId": 123456,
"created": 1488987561,
"updated": 1573503519,
"enabled": true,
"dedicatedIpsEnabled": true,
"privateLocationsEnabled": true,
"owner": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User"
},
"membersCount": 7,
"allowance": {
"amount": 17678,
"type": "credits"
},
"accountId": 123456,
"locations": [
{
"id": "harbor-5591335d8588531f5cde3a04",
"title": "Sandbox",
"name": "Sandbox",
"provider": "Sandbox",
"limits": {
"threadsPerEngine": 20,
"concurrency": 20,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": true,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east4-a",
"title": "US East (Virginia, Google)",
"name": "US East (Virginia)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east1-b",
"title": "US East (South Carolina, Google)",
"name": "US East (South Carolina)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west1-a",
"title": "US West (Oregon, Google)",
"name": "US West (Oregon)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-central1-a",
"title": "US Central (Iowa, Google)",
"name": "US Central (Iowa)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "northamerica-northeast1-a",
"title": "Canada East (Montreal, Google)",
"name": "Canada East (Montreal)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west2-a",
"title": "EU West (London, Google)",
"name": "EU West (London)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west3-a",
"title": "EU West (Frankfurt, Google)",
"name": "EU West (Frankfurt)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west1-b",
"title": "EU West (Belgium, Google)",
"name": "EU West (Belgium)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west4-b",
"title": "EU West (Netherlands, Google)",
"name": "EU West (Netherlands)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-east1-a",
"title": "Asia East (Taiwan, Google)",
"name": "Asia East (Taiwan)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-northeast1-a",
"title": "Asia Northeast (Japan, Google)",
"name": "Asia Northeast (Japan)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-southeast1-a",
"title": "Asia Southeast (Singapore, Google)",
"name": "Asia Southeast (Singapore)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-south1-a",
"title": "Asia South (Mumbai, Google)",
"name": "Asia South (Mumbai)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "australia-southeast1-a",
"title": "Australia (Sydney, Google)",
"name": "Australia (Sydney)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "southamerica-east1-a",
"title": "Brazil (Sao Paulo, Google)",
"name": "Brazil (Sao Paulo)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-northeast2-a",
"title": "Japan (Osaka, Google)",
"name": "Japan (Osaka)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west2-a",
"title": "US West (California, Google)",
"name": "US West (California)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east-1",
"title": "US East (Virginia, AWS)",
"name": "US East (Virginia)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east-2",
"title": "US East (Ohio, AWS)",
"name": "US East (Ohio)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west-1",
"title": "US West (N.California, AWS)",
"name": "US West (N.California)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west-2",
"title": "US West (Oregon, AWS)",
"name": "US West (Oregon)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ca-central-1",
"title": "Canada (Central, AWS)",
"name": "Canada (Central)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-1",
"title": "EU West (Ireland, AWS)",
"name": "EU West (Ireland)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-2",
"title": "EU West (London, AWS)",
"name": "EU West (London)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-3",
"title": "EU West (Paris, AWS)",
"name": "EU West (Paris)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-central-1",
"title": "EU Central (Frankfurt, AWS)",
"name": "EU Central (Frankfurt)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-northeast-1",
"title": "Asia Pacific (Tokyo, AWS)",
"name": "Asia Pacific (Tokyo)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-south-1",
"title": "Asia Pacific (Mumbai, AWS)",
"name": "Asia Pacific (Mumbai)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-northeast-2",
"title": "Asia Pacific (Seoul, AWS)",
"name": "Asia Pacific (Seoul)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-southeast-1",
"title": "Asia Pacific (Singapore, AWS)",
"name": "Asia Pacific (Singapore)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-southeast-2",
"title": "Australia (Sydney, AWS)",
"name": "Australia (Sydney)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "sa-east-1",
"title": "South America (Sao Paulo, AWS)",
"name": "South America (Sao Paulo)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-us-1",
"title": "US East (Virginia, Azure)",
"name": "US East (Virginia)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-us-2",
"title": "US East 2 (Virginia, Azure)",
"name": "US East 2 (Virginia)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-us-1",
"title": "US West (California, Azure)",
"name": "US West (California)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-us-2",
"title": "US West 2 (Washington, Azure)",
"name": "US West 2 (US West 2)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-us-west-central",
"title": "US West Central (Wyoming, Azure)",
"name": "US West Central (US West Central)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-us-1",
"title": "US Central (Iowa, Azure)",
"name": "US Central (Iowa)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-north-central-us-1",
"title": "US North Central (Illinois, Azure)",
"name": "US North Central (Illinois)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-south-central-us-1",
"title": "US South Central (Texas, Azure)",
"name": "US South Central (Texas)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-ca",
"title": "Canada East (Quebec City, Azure)",
"name": "Canada East (Quebec City)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-ca",
"title": "Canada Central (Toronto, Azure)",
"name": "Canada Central (Toronto)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-europe-1",
"title": "EU West (Netherlands, Azure)",
"name": "EU West (Netherlands)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-north-europe-1",
"title": "EU North (Ireland, Azure)",
"name": "EU North (Ireland)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-eu-west-3",
"title": "UK West (Cardiff, Azure)",
"name": "UK West (Cardiff)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-eu-west-2",
"title": "UK South (London, Azure)",
"name": "UK South (London)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-japan-east-1",
"title": "Japan East (Tokyo, Azure)",
"name": "Japan East (Tokyo, Saitama)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-japan-west-1",
"title": "Japan West (Osaka, Azure)",
"name": "Japan West (Osaka)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-ap-northeast-1",
"title": "Korea Central (Seoul, Azure)",
"name": "Korea Central (Seoul)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-ap-northeast-2",
"title": "Korea South (Busan, Azure)",
"name": "Korea South (Busan)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-asia-1",
"title": "East Asia (Hong Kong, Azure)",
"name": "East Asia (Hong Kong)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-southeast-asia-1",
"title": "Southeast Asia (Singapore, Azure)",
"name": "Southeast Asia (Singapore)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-1",
"title": "Central India (Pune, Azure)",
"name": "Central India (Pune)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-2",
"title": "West India (Mumbai, Azure)",
"name": "West India (Mumbai)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-3",
"title": "South India (Chennai, Azure)",
"name": "South India (Chennai)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-au-1",
"title": "Australia East (New South Wales, Azure)",
"name": "Australia East (New South Wales)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-southeast-au-1",
"title": "Australia Southeast (Victoria, Azure)",
"name": "Australia Southeast (Victoria)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-brazil-south-1",
"title": "Brazil South (Sao Paulo, Azure)",
"name": "Brazil South (Sao Paulo)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-58d3b97ff132adc0347b23c6",
"title": "Functional Testing Default Location",
"name": "Functional Testing Default Location",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59464ffd67f3bf63cb7b23c9",
"title": "US East (S. Carolina) - Functional Test",
"name": "US East (S. Carolina) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59465fcde4d6a240d97b23c6",
"title": "US West (Los Angeles) - Functional Test",
"name": "US West (Los Angeles) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-594662d6e6e960aedb7b23c7",
"title": "US West (Oregon) - Functional Test",
"name": "US West (Oregon) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946677fe4d6a21adb7b23c8",
"title": "Canada (Montreal) - Functional Test",
"name": "Canada (Montreal) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59466cb1e4d6a296e37b23c8",
"title": "EU West (Belgium) - Functional Test",
"name": "EU West (Belgium) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59466f1b67f3bfebe27b23c7",
"title": "EU West (Frankfurt) - Functional Test",
"name": "EU West (Frankfurt) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946708a65e00138e57b23c6",
"title": "EU West (London) - Functional Test",
"name": "EU West (London) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59467342e4d6a205e67b23c6",
"title": "Asia Pacific (Singapore) - Functional Test",
"name": "Asia Pacific (Singapore) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946756fe4d6a204e37b23c6",
"title": "Australia (Sydney) - Functional Test",
"name": "Australia (Sydney) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946770be6e960e5e57b23cf",
"title": "Asia Pacific (Seoul) - Functional Test",
"name": "Asia Pacific (Seoul) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5b0323b3c648be3b4c7b23c8",
"title": "Example Private Location",
"name": "Example Private Location",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5b0f166208e9cb973d7b23c8",
"title": "Recreate Issues",
"name": "Recreate Issues",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5b77157469770195257b23c6",
"title": "Staging Env ONLY",
"name": "Staging Env ONLY",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5b86c7f5e86da28c337b23c6",
"title": "Customer Reproduction",
"name": "Customer Reproduction",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5b87fb556b8abfea7d7b23ca",
"title": "Console-Engine Communication",
"name": "Console-Engine Communication",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5c8973ed0568ed07f368e1f7",
"title": "CI-Test",
"name": "CI-Test",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5c94ea930b63ac5fb64ab073",
"title": "Kubernetes Instance",
"name": "Kubernetes Instance",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d23ad18d6baf85cdc41e686",
"title": "Keybank Kube Test",
"name": "Keybank Kube Test",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2cecc61391a8f318703bd5",
"title": "New K8s",
"name": "New K8s",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": false,
"serviceMock": true
}
},
{
"id": "harbor-5d2e4f9ef54f63a700650266",
"title": "argaerg",
"name": "argaerg",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5d2e4fbb611274a61b066a93",
"title": "10+ Agents",
"name": "10+ Agents",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e50105b444da11c733e24",
"title": "aergaesrgsegrt",
"name": "aergaesrgsegrt",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e5019265d90a75c668184",
"title": "fjhm,ghj,ghk,g,",
"name": "fjhm,ghj,ghk,g,",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e501faef4bda5292a90e3",
"title": ",fhj,ghjk,ghj,",
"name": ",fhj,ghjk,ghj,",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e502649f49db05b1b127b",
"title": "sdfghsdrygthsdrgyt",
"name": "sdfghsdrygthsdrgyt",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e502d5b444d9e20588a14",
"title": "gnthmfthnmghm",
"name": "gnthmfthnmghm",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5e0e68b9568b27689176f3b4",
"title": "Shared",
"name": "Shared",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5e7e5a9d28320500d25dc3f3",
"title": "Docker 13.1 :(",
"name": "Docker 13.1 :(",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5e866d5f63d06209a46e9425",
"title": "GUI Functional Location",
"name": "GUI Functional Location",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5ab3c64ec8589f914c7b25db",
"title": "US East (Virginia) - Functional GUI Test",
"name": "US East (Virginia) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5d25f94f9950ce73cd105f53",
"title": "EU West (London) - Functional GUI Test",
"name": "EU West (London) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5d25f95f206f10730f21f1b4",
"title": "US West (Oregon) - Functional GUI Test",
"name": "US West (Oregon) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
}
],
"activeMember": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User",
"roles": [
"manager"
],
"enabled": true,
"access": 1592422761
}
},
"request_id": "5eea716988414"
}
Attributes
-
id
integerread-only
The unique identifier for the workspace. Also known as a
workspaceId
-
name
stringrequired
The name of this workspace
-
userId
integerread-only
The
userId
of the creator of the workspace -
created
integerread-only
The timestamp for when the workspace was created
-
updated
integerread-only
The timestamp for when the workspace was updated
-
enabled
booleanDenotes if the workspace is enabled or not
-
dedicatedIpsEnabled
booleanDenotes if dedicated IPs are enabled or not
-
privateLocationsEnabled
booleanDenotes if private locations are enabled or not
-
owner
objectread-only
The details of the owner of the workspace
-
id
integerread-only
The
userId
of the owner of the workspace -
email
stringread-only
The email of the owner of the workspace
-
displayName
stringread-only
The display name of the owner of the workspace
-
-
membersCount
integerread-only
The number of users in the workspace
-
allowance
objectread-only
The available billing usage details
-
amount
integerread-only
The amount of credits available to the workspace
-
type
stringread-only
The type of credits. It can be one of the following values:
credits
- Each test is treated as a creditvuh
- This credit type will charge 1 credit for each user run for each hour (tests under 1 hour are rounded up to 1 hour)
-
-
accountId
integerrequired
The
accountId
the workspace is located in -
locations
arrayread-only
The location details available to the workspace
-
id
stringread-only
The
location ID
of -
title
stringread-only
The title used for the location
-
name
stringread-only
The name of the location
-
provider
stringread-only
The cloud provider used for the location
-
limits
objectread-only
The limit details for this location. Typically determined by the billing plan assigned to the account
-
threadsPerEngine
integerread-only
The maximum number of concurrent users per engine
-
concurrency
integerread-only
The maximum number of concurrent users per test
-
engines
integerread-only
The maximum number of engines per test
-
duration
integerread-only
The maximum duration per test
-
-
capabilities
objectread-only
The capabilities details for the workspace
-
dedicatedIps
booleanread-only
Denotes if dedicated IPs are available or not
-
-
sandbox
booleanread-only
Denotes if this location is used for Debug tests or not
-
purposes
objectread-only
The details of what functionalities the locations work with
-
load
booleanread-only
Denotes if the location can be used in performance tests
-
functional
booleanread-only
Denotes if the location can be used in API functional tests
-
grid
booleanread-only
Denotes if the location can be used in GUI functional tests
-
serviceMock
booleanread-only
Denotes if the location can be used in mock services
-
-
-
activeMember
objectread-only
The user details of the requester
-
id
integerread-only
The
userId
of the requestor -
email
stringread-only
The email of the requestor
-
displayName
stringread-only
The display name of the requestor
-
roles
arrayread-only
The workspace roles of the requestor. Can be one of the following:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
enabled
booleanread-only
Denotes if the requestor user is enabled or not in the workspace
-
access
integerread-only
The last access time of the requestor
-
Create a Workspace
Create a Workspace
curl 'https://a.blazemeter.com/api/v4/workspaces' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"dedicatedIpsEnabled": true, "enabled": true, "name": "New Workspace", "privateLocationsEnabled": true, "accountId": 123456}'
API Explorer: /workspaces
To create a workspace:
- Create the workspace object with a POST to the workspaces endpoint (see sample code).
- Capture the
workspaceId
returned asid
from the response.
Create a Workspace Request Attributes
Create a Workspace Create a Workspace POST Body (JSON)
{
"dedicatedIpsEnabled": true,
"enabled": true,
"name": "New Workspace",
"privateLocationsEnabled": true,
"accountId": 123456
}
Attributes
-
dedicatedIpsEnabled
booleanDenotes if dedicated IPs are enabled or not
-
enabled
booleanDenotes if the workspace is enabled or not
-
name
stringrequired
The name of this workspace being created
-
privateLocationsEnabled
booleanDenotes if private locations are enabled or not
-
accountId
integerrequired
The
accountId
of the workspace being created
Create a Workspace Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "My New Workspace",
"userId": 123456,
"created": 1599742832,
"updated": 1599742832,
"enabled": true,
"dedicatedIpsEnabled": true,
"privateLocationsEnabled": true,
"owner": {
"id": 123456,
"email": "my.name@domain.com",
"displayName": "My Name"
},
"membersCount": 1,
"allowance": {
"amount": 10,
"type": "credits"
},
"accountId": 123456,
"features": {
"webdriver": true,
"multi": true,
"multi-location": true,
"multiLocation": true,
"dedicatedIps": true,
"privateLocations": true,
"functionalTest": true,
"mobileRecorder": true,
"disableResultsEmail": true,
"privilegedFlagToggle": false,
"pivotsReport": true,
"externalFunctionalMobileTest": true,
"proxyRecorderForPrivateCloud": false,
"userExperienceTestingPrivateCloud": false,
"disableV4URLTest": false,
"disableOTC": true,
"ignoreNTCValidationFailed": false,
"secureV4Image": false,
"disableNTCAutoSave": false,
"jupyterNotebook": false,
"V4PCOriginalTestConfig": false,
"enableJetlagPipeline": false,
"disableJetlagPipeline": false,
"disableJetpackPipeline": false,
"disableJetlagPipelineForPrivateCloud": false,
"daggerAsDefaultReportForPrivateCloud": false,
"isGridTestChargeEnabled": false,
"keyboardShortcuts": true,
"disableAccountHarborBatchProvisioning": false,
"testScheduler": false,
"privateCloudScheduler": false,
"v4MasterCommandsForPrivateCloud": false,
"v4MasterCommandsRpsForPrivateCloud": false,
"rootlessCraneImages": false,
"stagingAccount": false,
"anchorServices": false,
"JPMCProdBanner": false,
"hideChromeExtensionButton": false,
"enableFunctionalGuiForPrivateCloud": false,
"craneNetworkModeHost": false,
"cloudResourceUsageReport": true,
"keycloakForPrivateCloud": false,
"mockServicesForPrivateCloud": false,
"ardForPrivateCloud": false,
"devTest": false,
"functionalGuiBuilder": false,
"ard": true,
"objectRepository": true,
"showReportHistoryIdColumn": false,
"redirectAllTabsToRunscope": false,
"skipCheckScenariosLimit": false,
"sendDataToGooglePipeline": false,
"ardBeta": true,
"ardLegacy": false,
"tdm": true,
"enableContainerReplicas": false,
"gridWindows": false,
"enableSecrets": true,
"queueTest": true,
"queueFunctionalTest": true,
"blazeVSE": false,
"telemetryLegacySKU": true,
"upstreamProxy": false,
"enableTestYamlEdit": true,
"useSelenium4": true,
"slowPipeline": false,
"disableSlowPipeline": false,
"taurusV4": false,
"functionalApi": true,
"apiTestMaker": false,
"skipCheckV4SessionsLimit": true,
"v4Jetpack": true,
"functionalGui": true,
"enableNTCMockServicesPanel": true,
"runscope": true,
"functionalGuiLivestream": true,
"gridMultipleIterations": true,
"functionalTestSuite": true,
"allowWindowsOpl": true,
"newTest": true,
"enableNewMultiTest": true,
"redirectV4": true,
"userExperienceTesting": true
},
"plan": {
"id": "MYPLAN",
"name": "MYPLAN",
"type": "credits",
"totalCredits": 18000,
"concurrency": 500000,
"engines": 1000,
"isMetered": true,
"duration": 712,
"reportRetention": -1,
"threadsPerEngine": 1000,
"threadsPerMediumEngine": 1000,
"createdAt": 1488987563445,
"updatedAt": 1584375825359,
"isSandBox": false,
"trial": {
"end": null
},
"isFreeTier": false,
"isTrial": false,
"paymentServiceType": "stripe",
"unlimitedTestingUpTo": 0,
"maxWorkspaces": 999,
"multiLocation": true,
"maxParallelTests": -1,
"leftFunctional": 100,
"quantityFunctional": 100,
"maxConcurrentBrowsers": -1,
"maxConcurrentMockServices": -1,
"mockServicesExpiration": -1,
"mockServicesMaxReplicas": -1
},
"expiration": null,
"credits": 17639,
"billing": {
"defaultPaymentSource": null,
"city": "",
"companyName": "",
"country": "",
"email": "my.email@domain.com",
"fullName": "",
"phoneNumber": "",
"postcode": "",
"street": "",
"vat": ""
}
},
"request_id": "5f5a23709ab5e"
}
See The Workspace Object for the details on the response attributes.
Workspaces List
Workspaces List
curl 'https://a.blazemeter.com/api/v4/workspaces?accountId=123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /workspaces
To return a list of the workspaces, an accountId
is required. The sample code returns a list of workspaces within accountId
of 123456
. Use the actual ID value for the account to return the list of the workspaces in your account.
Workspace List Parameters
Parameters
-
accountId
integerrequired
The
accountId
you are wanting to get the list of workspaces from -
enabled
booleanDenotes whether the response will contain only enabled (if set to
true
) workspaces or only disabled (if set tofalse
) workspaces -
textFilter
stringFilters the returned workspace list to any workspace names that match the given string
Also see: Pagination and Sorting
Workspaces List Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 234567,
"name": "Another Workspace",
"userId": 123456,
"created": 1544563474,
"updated": 1544563474,
"enabled": true,
"dedicatedIpsEnabled": true,
"privateLocationsEnabled": true,
"owner": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User"
},
"membersCount": 1,
"allowance": {
"amount": 17568,
"type": "credits"
},
"accountId": 123456
},
{
"id": 123456,
"name": "Default workspace",
"userId": 123456,
"created": 1488987561,
"updated": 1572904019,
"enabled": true,
"dedicatedIpsEnabled": true,
"privateLocationsEnabled": true,
"owner": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User"
},
"membersCount": 6,
"allowance": {
"amount": 17568,
"type": "credits"
},
"accountId": 123456
}
],
"request_id": "5dc5bb21cda8d"
}
To see a breakdown of the attributes, please see The Workspace Object section.
Workspace Details
Workspace Details
curl 'https://a.blazemeter.com/api/v4/workspaces/123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /workspaces/{workspaceId}
To return the details of a workspace, a workspaceId
is required. The sample code returns the details of the workspace with workspaceId
of 123456
. Use the actual ID value for the workspace to return the detail of your workspace.
Workspace Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "Default workspace",
"userId": 123456,
"created": 1488987561,
"updated": 1573503519,
"enabled": true,
"dedicatedIpsEnabled": true,
"privateLocationsEnabled": true,
"owner": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User"
},
"membersCount": 7,
"allowance": {
"amount": 17678,
"type": "credits"
},
"accountId": 123456,
"locations": [
{
"id": "harbor-5591335d8588531f5cde3a04",
"title": "Sandbox",
"name": "Sandbox",
"provider": "Sandbox",
"limits": {
"threadsPerEngine": 20,
"concurrency": 20,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": true,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east4-a",
"title": "US East (Virginia, Google)",
"name": "US East (Virginia)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east1-b",
"title": "US East (South Carolina, Google)",
"name": "US East (South Carolina)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west1-a",
"title": "US West (Oregon, Google)",
"name": "US West (Oregon)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-central1-a",
"title": "US Central (Iowa, Google)",
"name": "US Central (Iowa)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "northamerica-northeast1-a",
"title": "Canada East (Montreal, Google)",
"name": "Canada East (Montreal)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west2-a",
"title": "EU West (London, Google)",
"name": "EU West (London)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west3-a",
"title": "EU West (Frankfurt, Google)",
"name": "EU West (Frankfurt)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west1-b",
"title": "EU West (Belgium, Google)",
"name": "EU West (Belgium)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "europe-west4-b",
"title": "EU West (Netherlands, Google)",
"name": "EU West (Netherlands)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-east1-a",
"title": "Asia East (Taiwan, Google)",
"name": "Asia East (Taiwan)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-northeast1-a",
"title": "Asia Northeast (Japan, Google)",
"name": "Asia Northeast (Japan)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-southeast1-a",
"title": "Asia Southeast (Singapore, Google)",
"name": "Asia Southeast (Singapore)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-south1-a",
"title": "Asia South (Mumbai, Google)",
"name": "Asia South (Mumbai)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "australia-southeast1-a",
"title": "Australia (Sydney, Google)",
"name": "Australia (Sydney)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "southamerica-east1-a",
"title": "Brazil (Sao Paulo, Google)",
"name": "Brazil (Sao Paulo)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "asia-northeast2-a",
"title": "Japan (Osaka, Google)",
"name": "Japan (Osaka)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west2-a",
"title": "US West (California, Google)",
"name": "US West (California)",
"provider": "Google Cloud Platform",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east-1",
"title": "US East (Virginia, AWS)",
"name": "US East (Virginia)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-east-2",
"title": "US East (Ohio, AWS)",
"name": "US East (Ohio)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west-1",
"title": "US West (N.California, AWS)",
"name": "US West (N.California)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "us-west-2",
"title": "US West (Oregon, AWS)",
"name": "US West (Oregon)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ca-central-1",
"title": "Canada (Central, AWS)",
"name": "Canada (Central)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-1",
"title": "EU West (Ireland, AWS)",
"name": "EU West (Ireland)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-2",
"title": "EU West (London, AWS)",
"name": "EU West (London)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-west-3",
"title": "EU West (Paris, AWS)",
"name": "EU West (Paris)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "eu-central-1",
"title": "EU Central (Frankfurt, AWS)",
"name": "EU Central (Frankfurt)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-northeast-1",
"title": "Asia Pacific (Tokyo, AWS)",
"name": "Asia Pacific (Tokyo)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-south-1",
"title": "Asia Pacific (Mumbai, AWS)",
"name": "Asia Pacific (Mumbai)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-northeast-2",
"title": "Asia Pacific (Seoul, AWS)",
"name": "Asia Pacific (Seoul)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-southeast-1",
"title": "Asia Pacific (Singapore, AWS)",
"name": "Asia Pacific (Singapore)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "ap-southeast-2",
"title": "Australia (Sydney, AWS)",
"name": "Australia (Sydney)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "sa-east-1",
"title": "South America (Sao Paulo, AWS)",
"name": "South America (Sao Paulo)",
"provider": "Amazon Web Services",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-us-1",
"title": "US East (Virginia, Azure)",
"name": "US East (Virginia)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-us-2",
"title": "US East 2 (Virginia, Azure)",
"name": "US East 2 (Virginia)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-us-1",
"title": "US West (California, Azure)",
"name": "US West (California)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-us-2",
"title": "US West 2 (Washington, Azure)",
"name": "US West 2 (US West 2)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-us-west-central",
"title": "US West Central (Wyoming, Azure)",
"name": "US West Central (US West Central)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-us-1",
"title": "US Central (Iowa, Azure)",
"name": "US Central (Iowa)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-north-central-us-1",
"title": "US North Central (Illinois, Azure)",
"name": "US North Central (Illinois)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-south-central-us-1",
"title": "US South Central (Texas, Azure)",
"name": "US South Central (Texas)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-ca",
"title": "Canada East (Quebec City, Azure)",
"name": "Canada East (Quebec City)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-ca",
"title": "Canada Central (Toronto, Azure)",
"name": "Canada Central (Toronto)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-west-europe-1",
"title": "EU West (Netherlands, Azure)",
"name": "EU West (Netherlands)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-north-europe-1",
"title": "EU North (Ireland, Azure)",
"name": "EU North (Ireland)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-eu-west-3",
"title": "UK West (Cardiff, Azure)",
"name": "UK West (Cardiff)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-eu-west-2",
"title": "UK South (London, Azure)",
"name": "UK South (London)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-japan-east-1",
"title": "Japan East (Tokyo, Azure)",
"name": "Japan East (Tokyo, Saitama)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-japan-west-1",
"title": "Japan West (Osaka, Azure)",
"name": "Japan West (Osaka)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-ap-northeast-1",
"title": "Korea Central (Seoul, Azure)",
"name": "Korea Central (Seoul)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-ap-northeast-2",
"title": "Korea South (Busan, Azure)",
"name": "Korea South (Busan)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-asia-1",
"title": "East Asia (Hong Kong, Azure)",
"name": "East Asia (Hong Kong)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-southeast-asia-1",
"title": "Southeast Asia (Singapore, Azure)",
"name": "Southeast Asia (Singapore)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-1",
"title": "Central India (Pune, Azure)",
"name": "Central India (Pune)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-2",
"title": "West India (Mumbai, Azure)",
"name": "West India (Mumbai)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-central-asia-3",
"title": "South India (Chennai, Azure)",
"name": "South India (Chennai)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-east-au-1",
"title": "Australia East (New South Wales, Azure)",
"name": "Australia East (New South Wales)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-southeast-au-1",
"title": "Australia Southeast (Victoria, Azure)",
"name": "Australia Southeast (Victoria)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "azure-brazil-south-1",
"title": "Brazil South (Sao Paulo, Azure)",
"name": "Brazil South (Sao Paulo)",
"provider": "Microsoft Azure",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 500000,
"engines": 1000,
"duration": 712
},
"capabilities": {
"dedicatedIps": false
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-58d3b97ff132adc0347b23c6",
"title": "Functional Testing Default Location",
"name": "Functional Testing Default Location",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59464ffd67f3bf63cb7b23c9",
"title": "US East (S. Carolina) - Functional Test",
"name": "US East (S. Carolina) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59465fcde4d6a240d97b23c6",
"title": "US West (Los Angeles) - Functional Test",
"name": "US West (Los Angeles) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-594662d6e6e960aedb7b23c7",
"title": "US West (Oregon) - Functional Test",
"name": "US West (Oregon) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946677fe4d6a21adb7b23c8",
"title": "Canada (Montreal) - Functional Test",
"name": "Canada (Montreal) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59466cb1e4d6a296e37b23c8",
"title": "EU West (Belgium) - Functional Test",
"name": "EU West (Belgium) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59466f1b67f3bfebe27b23c7",
"title": "EU West (Frankfurt) - Functional Test",
"name": "EU West (Frankfurt) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946708a65e00138e57b23c6",
"title": "EU West (London) - Functional Test",
"name": "EU West (London) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-59467342e4d6a205e67b23c6",
"title": "Asia Pacific (Singapore) - Functional Test",
"name": "Asia Pacific (Singapore) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946756fe4d6a204e37b23c6",
"title": "Australia (Sydney) - Functional Test",
"name": "Australia (Sydney) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5946770be6e960e5e57b23cf",
"title": "Asia Pacific (Seoul) - Functional Test",
"name": "Asia Pacific (Seoul) - Functional Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": true,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5b0323b3c648be3b4c7b23c8",
"title": "Example Private Location",
"name": "Example Private Location",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5b0f166208e9cb973d7b23c8",
"title": "Recreate Issues",
"name": "Recreate Issues",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5b77157469770195257b23c6",
"title": "Staging Env ONLY",
"name": "Staging Env ONLY",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5b86c7f5e86da28c337b23c6",
"title": "Customer Reproduction",
"name": "Customer Reproduction",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5b87fb556b8abfea7d7b23ca",
"title": "Console-Engine Communication",
"name": "Console-Engine Communication",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5c8973ed0568ed07f368e1f7",
"title": "CI-Test",
"name": "CI-Test",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5c94ea930b63ac5fb64ab073",
"title": "Kubernetes Instance",
"name": "Kubernetes Instance",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d23ad18d6baf85cdc41e686",
"title": "Keybank Kube Test",
"name": "Keybank Kube Test",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2cecc61391a8f318703bd5",
"title": "New K8s",
"name": "New K8s",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": false,
"serviceMock": true
}
},
{
"id": "harbor-5d2e4f9ef54f63a700650266",
"title": "argaerg",
"name": "argaerg",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": false,
"serviceMock": false
}
},
{
"id": "harbor-5d2e4fbb611274a61b066a93",
"title": "10+ Agents",
"name": "10+ Agents",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e50105b444da11c733e24",
"title": "aergaesrgsegrt",
"name": "aergaesrgsegrt",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e5019265d90a75c668184",
"title": "fjhm,ghj,ghk,g,",
"name": "fjhm,ghj,ghk,g,",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e501faef4bda5292a90e3",
"title": ",fhj,ghjk,ghj,",
"name": ",fhj,ghjk,ghj,",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e502649f49db05b1b127b",
"title": "sdfghsdrygthsdrgyt",
"name": "sdfghsdrygthsdrgyt",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5d2e502d5b444d9e20588a14",
"title": "gnthmfthnmghm",
"name": "gnthmfthnmghm",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 1000,
"concurrency": 1000,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": true,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5e0e68b9568b27689176f3b4",
"title": "Shared",
"name": "Shared",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": true,
"functional": false,
"grid": true,
"serviceMock": true
}
},
{
"id": "harbor-5e7e5a9d28320500d25dc3f3",
"title": "Docker 13.1 :(",
"name": "Docker 13.1 :(",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5e866d5f63d06209a46e9425",
"title": "GUI Functional Location",
"name": "GUI Functional Location",
"provider": "Private Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5ab3c64ec8589f914c7b25db",
"title": "US East (Virginia) - Functional GUI Test",
"name": "US East (Virginia) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5d25f94f9950ce73cd105f53",
"title": "EU West (London) - Functional GUI Test",
"name": "EU West (London) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
},
{
"id": "harbor-5d25f95f206f10730f21f1b4",
"title": "US West (Oregon) - Functional GUI Test",
"name": "US West (Oregon) - Functional GUI Test",
"provider": "Public Locations",
"limits": {
"threadsPerEngine": 300,
"concurrency": 300,
"engines": 0,
"duration": 712
},
"capabilities": {
"dedicatedIps": false,
"isPrivileged": true
},
"sandbox": false,
"purposes": {
"load": false,
"functional": false,
"grid": true,
"serviceMock": false
}
}
],
"activeMember": {
"id": 123456,
"email": "my.user@myDomain.com",
"displayName": "My User",
"roles": [
"manager"
],
"enabled": true,
"access": 1592422761
}
},
"request_id": "5eea716988414"
}
See The Workspace Object for the details on the response attributes.
Add User to Workspace
Add User to Workspace
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/users' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"usersIds":[352749],"roles": ["manager"]}'
API Explorer: /workspaces/{workspaceId}/users
To add a user to a workspace, you need the workspaceId
of the workspace you want to add the user to and use an API key that has account admin access or a workspace manager role. For the sample code on the right, workspaceId
123456
has added user myName@myDomain.com
to the workspace with the workspace manager role.
Add User to Workspace Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Add User to Workspace Add User to Workspace POST Body (JSON)
{
"usersIds": [
352749
],
"roles": [
"manager"
]
}
Attributes
-
usersIds
arrayrequired
The
userId
s of the user(s) you want to add as aninteger
-
roles
arrayrequired
An array of workspace roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role
Add User to Workspace Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": [
{
"id": 123456,
"roles": [
"manager"
],
"enabled": true,
"lastAccess": 1573503678,
"type": "workspace",
"memberId": {
"$oid": "5dc9c2be4b5cab1c82345bb3"
},
"displayName": "Standard Manager",
"firstName": "Standard",
"lastName": "Manager",
"login": 1570322423,
"email": "myName@myDomain.com",
"access": 1573503678
}
],
"request_id": "5dc9c2be0ae5a"
}
Attributes
-
id
integerread-only
The unique identifier for the user. Also know as a
userId
-
roles
arrayThe roles assigned to this user. Can be ONE of the following:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
enabled
booleanDenotes if the user is enabled or not in the workspace
-
lastAccess
integerread-only
The timestamp of when the user last accessed the workspace
-
type
stringread-only
The level of the user. Will alwasy be
workspace
for this case -
displayName
stringread-only
The display name for the user
-
firstName
stringread-only
The first name of the user
-
lastName
stringread-only
The last name of the user
-
login
integerread-only
The timestamp of the last login for this user
-
email
stringThe email address of this user
-
access
integerread-only
The timestamp of the last access for this user
Workspace User List
Workspace User List
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/users' \
--user 'api_key_id:api_key_secret'
API Explorer: /workspaces/{workspaceId}/users
To return a list of the workspace users, a workspaceId
is required. The sample code returns a list of workspace users within workspaceId
of 123456
. Use the actual ID value for the workspace to return the list of the workspace users in your workspace.
Workspace User List Parameters
Parameters
-
roles
arrayThe roles you are wanting to get the list of workspace users for. Uses the following format:
roles[]=${role}
. These values can be any of the following:tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
excludeRoles
arrayThe roles you are wanting to exclude from the list of account users. Uses the following format:
excludeRoles[]=${role}
. These values can be any of the following:tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
enabled
booleanDenotes if you are wanting to get a list of account users that are enabled (if
true
) or disabled (iffalse
) -
textFilter
stringFilters the returned account user list to any account user emails that match the given string
Also see: Pagination
Workspace User List Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 123456,
"email": "adminUser@myDomain.com",
"displayName": "Admin User",
"firstName": "Admin",
"lastName": "User",
"login": 1573488679,
"access": 1573501903,
"roles": [
"manager"
],
"enabled": true,
"lastAccess": 1573501903
},
{
"id": 234567,
"email": "standardUser@myDomain.com",
"displayName": "Standard User",
"firstName": "Standard",
"lastName": "User",
"login": 1506347921,
"access": 1516906397,
"roles": [
"tester"
],
"enabled": false,
"lastAccess": 1516906397,
"type": "workspace"
}
],
"request_id": "5dc9bdef0a561"
}
Attributes
-
id
integerread-only
The
userId
of the user -
email
stringread-only
The email address of the user
-
displayName
stringread-only
The display name of the user
-
firstName
stringread-only
The first name of the user
-
lastName
stringread-only
The last name of the user
-
login
integerread-only
The timestamp for when the user last logged in
-
access
integerread-only
The timestamp for when the user last accessed the workspace
-
roles
arrayAn array of workspace roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
enabled
booleanDenotes if the user is enabled in the workspace or not
-
lastAccess
integerread-only
The timestamp for when the user last accessed the workspace
Update Workspace User
Update Workspace User
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/users/123456' \
-X PUT \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"roles":["viewer"],"enabled": false}'
API Explorer: /workspaces/{workspaceId}/users/{userId}
To change a user's workspace role and disable or enable an user in the workspace, a workspaceId
and an userId
are required. The sample code changes the workspace role of userId
of 123456
within workspaceId
of 123456
to viewer
and disables the user. Use the actual ID value for the workspace and user you are wanting to change.
Update Workspace User Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Update Workspace User Update Workspace User PUT Body (JSON)
{
"roles": [
"viewer"
],
"enabled": false
}
Attributes
-
roles
arrayAn array of workspace roles that will be assigned to the user. Only ONE role should be assigned for any user. The following are the available roles:
tester
- Workspace tester rolemanager
- Workspace manager roleviewer
- Workspace viewer role -
enabled
booleanDenotes if the user is enabled or disabled in the account
Update Workspace User Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"roles": [
"viewer"
],
"enabled": false,
"lastAccess": 1573506574,
"type": "workspace",
"displayName": "Viewer User",
"login": 1562944843,
"email": "viwerUser@myDomain.com"
},
"request_id": "5dc9ce0e3076d"
}
For a breakdown of the response attributes, see the Add User to Workspace Response Attributes section.
Remove Managers from Workspace
Remove Managers from Workspace
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/delete-managers' \
-X POST \
-H 'Content-Type: application/json' \
-d '{"managersIds":[654321]}'
API Explorer: /workspaces/{workspaceId}/delete-managers
To remove managers from a workspace, replace the workspaceId
123456
with the workspaceId
of your workspace, and provide the Manager IDs of the managers to remove.
Remove Managers from Workspace Request Attributes
Remove Managers from Workspace Remove Managers from Workspace POST Body (JSON)
{
"managersIds": [
654321
]
}
Attributes
-
managersIds
integerrequired
The IDs of managers to remove from the workspace
Response 204 No Content
Terminate Masters in Workspace
Terminate Masters in Workspace
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/terminate-masters' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"dryRun": false}'
API Explorer: /workspaces/{workspaceId}/terminate-masters
To terminate all running masters in a workspace, you need the workspaceId
of the workspace. For the sample code on the right, we are terminating all the running masters in workspaceId
123456
. To terminate all the masters in your workspace, replace the workspaceId
123456
with the workspaceId
of your workspace.
Terminate Masters in Workspace Request Attributes
Terminate Masters in Workspace Terminate Masters in Workspace POST Body (JSON)
{
"dryRun": false
}
Attributes
-
dryRun
booleanrequired
If
false
, the request is will terminate all masters in the given workspace. Iftrue
, the masters will not be terminated, but a list will be provided
Terminate Masters in Workspace Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": [
21509126,
21509125
],
"request_id": "5dc5a94bcc138"
}
Attributes
-
result
arrayContains a list of
masterId
s terminated (ifdryRun
=false
) or will be terminated (ifdryRun
=true
)
Delete Logs
Delete Master Logs
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/delete-logs' \
-X POST \
-H 'Content-Type: application/json' \
-d '{"masterIds":[234567]}'
API Explorer: /workspaces/{workspaceId}/delete-logs
To remove logs for a given master, replace the workspaceId
.
Delete Master Logs Request Attributes
Delete Master Logs Delete Master Logs POST Body (JSON)
{
"masterIds": [
234567
]
}
Attributes
-
masterIds
integerrequired
The ID(s) of the master(s) whose logs to remove, formatted in an array
Response 204 No Content
Projects
This section goes over how to handle project administration (i.e. creating a project, deleting a project, etc.) for your BlazeMeter project.
To run many of these APIs, you will need the projectId
for the project you are wanting to handle.
The Project Object
The Project Object
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "Default project",
"userId": 123456,
"description": null,
"created": 1488987563,
"updated": 1488987563,
"workspaceId": 123456,
"testsCount": 417
},
"request_id": "5eea8ecd9eace"
}
Attributes
-
id
integerread-only
The
projectId
of the project -
name
stringrequired
The name of the project
-
userId
integerread-only
The
userId
of the API Key used -
description
stringA description of the project
-
created
integerread-only
The timestamp for when the project was created
-
updated
integerread-only
The timestamp for when the project was updated
-
workspaceId
integerThe
workspaceId
the project is associated with -
testsCount
integerread-only
The number of tests that are within the project
Create a Project
Create a Project
curl 'https://a.blazemeter.com/api/v4/projects' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name": "V4 Create Test Through API", "description": "A description", "workspaceId": 123456}'
API Explorer: /projects
To create a project:
- Create the project object with a POST to the projects endpoint (see sample code).
- Capture the
projectId
returned asid
from the response.
Create a Project Request Attributes
Create a Project Create a Project POST Body (JSON)
{
"name": "V4 Create Test Through API",
"description": "A description",
"workspaceId": 123456
}
Attributes
-
name
stringrequired
The project name
-
description
stringThe project description
-
workspaceId
integerrequired
The
workspaceId
you want to associate the project to
Create a Project Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "V4 Create Test Through API",
"userId": 123456,
"description": "A description",
"created": 1488987563,
"updated": 1488987563,
"workspaceId": 123456,
"testsCount": 388
}
}
See The Project Object for the details on the response attributes.
Projects List
Projects List
curl 'https://a.blazemeter.com/api/v4/projects?workspaceId=123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /projects
To return a list of the projects, a workspaceId
or an accountId
is required. The sample code returns a list of projects within workspaceId
of 123456
. Use the actual ID value for the workspace to return the list of the projects in your workspace.
Projects List Parameters
Parameters
-
accountId
integerrequired
The
accountId
you are wanting to get the list of projects from -
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of projects from -
name
stringFilters the returned project list to any project names that match the given string
Also see: Pagination and Sorting
Projects List Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 234567,
"name": "New Project",
"userId": 234567,
"description": "Tests using new project",
"created": 1489672823,
"updated": 1489672823,
"workspaceId": 123456,
"testsCount": 126
},
{
"id": 123456,
"name": "Default project",
"userId": 123456,
"description": null,
"created": 1488987563,
"updated": 1488987563,
"workspaceId": 123456,
"testsCount": 388
}
],
"request_id": "5dc9d8bd366b4"
}
See The Project Object for the details on the response attributes.
Project Details
Project Details
curl 'https://a.blazemeter.com/api/v4/projects/123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /projects/{projectId}
To return the details of a project, a projectId
is required. The sample code returns the details of the project with projectId
of 123456
. Use the actual ID value for the project to return the detail of your project.
Project Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 167798,
"name": "Default project",
"userId": 344260,
"description": null,
"created": 1488987563,
"updated": 1488987563,
"workspaceId": 123429
},
"request_id": "5eea991e547ca"
}
See The Project Object for the details on the response attributes.
Update a Project
Update a Project
curl 'https://a.blazemeter.com/api/v4/projects/123456' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"New Test Name For API"}'
API Explorer: /projects/{projectId}
To update a project, use PATCH to change the provided configuration for a given project (you need to know the projectId
). The sample code updates a test with an ID of 123456
(the 123456
is contained in the URL) with a new test name New Test Name For API
, a new description of This is my description
, and a new workspaceId
of 234567
.
If you do not know the projectId
of the project to update, use List Projects to return a list of your created projects.
Update a Project Request Attributes
Update a Project Update a Project Sample PATCH Body (JSON)
{
"name": "New Test Name For API",
"description": "This is my description",
"workspaceId": 234567
}
Attributes
-
name
stringThe project name
-
description
stringThe project description
-
workspaceId
integerThe
workspaceId
you want to associate the project to
Update a Project Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"name": "New Test Name For API",
"userId": 123456,
"description": "This is my description",
"created": 1488987563,
"updated": 1488987563,
"workspaceId": 234567,
"testsCount": 388
}
}
See The Project Object for the details on the response attributes.
Delete a Project
Delete a Project
curl 'https://a.blazemeter.com/api/v4/projects/123456' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /projects/{projectId}
To delete a project, DELETE its ID (you need to know the projectId
). The sample code deletes a project with an ID of 123456
. Use the projectId
of the actual project to delete in place of the 123456
.
If you do not know the ID of the project to delete, use the List Projects section to return a list of your created projects.
Delete a Project Parameters
Parameters
-
force
booleanThis will force delete a project, including all the
tests
andmasters
that are present in this project
Terminate Masters in Projects
Terminate Masters in Projects
curl 'https://a.blazemeter.com/api/v4/projects/123456/terminate-masters' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"dryRun": false}'
API Explorer: /projects/{projectId}/terminate-masters
To terminate all running masters in a project, you need the projectId
of the project. For the sample code on the right, we are terminating all the running masters in projectId
123456
. To terminate all the masters in your project, replace the projectId
123456
with the projectId
of your project.
Terminate Masters in Project Request Attributes
Terminate Masters in Project Terminate Masters in Project POST Body (JSON)
{
"dryRun": false
}
Attributes
-
dryRun
booleanrequired
If
false
, the request is will terminate all masters in the given project. Iftrue
, the masters will not be terminated, but a list will be provided
Terminate Masters in Project Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": [
21509126,
21509125
],
"request_id": "5dc5a94bcc138"
}
Attributes
-
result
arrayContains a list of
masterId
s terminated (ifdryRun
=false
) or will be terminated (ifdryRun
=true
)
Tests
When you create a test, you are creating a test
object configured with specific parameters.
Once you have created a test and have uploaded any required files, you can start the test, which will create a master
for control and reporting.
You will also need the location id
to point your test configuration to the correct location(s) you want your test to run in.
As we are heavily integrated with Taurus, the test override configurations will display similarly to the Taurus execution section. If you are familiar with the YAML or JSON formatting of these configuration files, you can easily translate that knowledge to our API configurations.
The Test Object
The Test Object
{
"api_version": 4,
"error": null,
"result": {
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1598556724,
"name": "Full Test Example",
"description": "A Full Test Settings Example",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"rampUp": "1m",
"steps": 0,
"throughput": 10
}],
"executions": [{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"hasThreadGroupsToOverride": false,
"hasNonRegularThreadGroup": false,
"shouldSendReportEmail": true,
"dependencies": {
"data": [],
"services": [{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}]
},
"created": 1598555261,
"updated": 1598555574,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": true,
"javaVersion": "11",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableHostsOverride": true,
"enableFailureCriteria": true,
"enableNetworkEmulation": true,
"enableMockServices": true,
"enableTestData": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [{
"key": "newProperty",
"value": "aValue"
}],
"hosts": [{
"hostname": "my.hostname.com",
"ip": "10.24.25.100"
}],
"newrelic": [
"5acc544d61a347b23d7b23c9"
],
"jmeter": {
"version": "5.3",
"consoleArgs": "",
"enginesArgs": ""
},
"network": {
"preset": "Custom",
"latency": 30,
"bandwidth": 300000,
"packetloss": 5
},
"thresholds": {
"thresholds": [{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"dynaTrace": {
"enabled": true,
"method": "fullIntegration",
"profiles": [
"5abd5d4863cb0e6c5a7b2577"
],
"profilesId": null
},
"cloudWatch": {
"newIntegration": true,
"profiles": [
"5abd5d8863cb0e6c5a7b2588"
]
},
"caApm": {
"enabled": true,
"method": "fullIntegration",
"profiles": [
"5abd5d8863cb0e6c5a7b2577"
]
},
"appDynamics": [
"5acc544d61a347b23d7b43c9"
],
"newRelicInsights": {
"credentialsId": "5e93107b5de79a699662d5c4",
"profiles": [
"5abd5d8863cb0e6c5a7b2775"
]
},
"userExperience": {
"enabled": true,
"pages": [{
"label": "Homepage",
"url": "https://blazedemo.com"
}]
}
}
}
},
"request_id": "5f491a49667ae"
}
Attributes
-
id
integerread-only
The unique identifier of the test. This is known as the
testId
and cannot be modified -
isNewTest
booleanread-only
Denotes this is a new test. Always
True
-
lastRunTime
integerThe time the test was last ran
-
name
stringrequired
The test name
-
description
stringA description of the test
-
userId
integerread-only
The unique identifier of the user who created the test
-
creatorClientId
stringread-only
The ID of the creator client. For example,
api
, orgui
-
overrideExecutions
arrayThe test settings used when running the test in BlazeMeter
-
concurrency
integerThe number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
executor
stringThe script type you are running (similar to
executor
in Taurus). Includes the following:gatling
grinder
jmeter
locust
pbench
selenium
siege
-
holdFor
stringThe length of time the test will run at the peak concurrency (same as
hold-for
in Taurus). Values can be provided inm
(minutes) only -
locations
objectThe locations where the test will run
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the number of users you want to run on that location. Use this ORlocationsPercents
data, not both
-
-
locationsPercents
objectThe percentage of users each location gets
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the percentage of users you want to run on that location. Use this ORlocations
data, not both
-
-
rampUp
stringThe length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus). Values can be provided inm
(minutes) only -
iterations
integerThe number of iterations to run the test with. Will always be
1
for this test type. Same asiterations
in Taurus -
steps
integerThe number of rampup steps (same as
steps
in Taurus). This can be empty -
throughput
integerThe maximum throughput allowed (same as
throughput
in Taurus). This can be empty
Minimum:1
Maximum:concurrency
value
-
-
executions
arrayThe execution settings from the file or last test run for this test
-
concurrency
integerread-only
The number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
usersNotConfigured
booleanread-only
Denotes if the
concurrency
override has been set or not -
holdFor
stringread-only
The length of time the test will run at the peak concurrency (same as
hold-for
in Taurus) -
durationIsNotConfigured
booleanread-only
Denotes if the
hold-for
override has been set or not -
rampUp
stringread-only
The length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus) -
steps
integerread-only
-
iterations
integerread-only
The number of iterations to run the test with. Will always be
1
for this test type. Same asiterations
in Taurus -
throughput
integerread-only
The maximum throughput allowed (same as
throughput
in Taurus) -
locations
objectThe locations where the test will run
-
location Id
integerread-only
A
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the number of users you want to run on that location. Use this ORlocationsPercents
data, not both
-
-
locationsPercents
objectThe percentage of users each location gets
-
location Id
integerread-only
A
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the percentage of users you want to run on that location. Use this ORlocations
data, not both
-
-
executor
stringread-only
The script type you are running. Includes the following:
gatling
grinder
jmeter
locust
pbench
selenium
siege
-
scenario
stringread-only
BlazeMeter scenario reference for GUI reports
-
executionSource
stringread-only
Tells BlazeMeter to run the selenium scenario for End User Experience under these settings
-
-
hasThreadGroupsToOverride
booleanread-only
Denotes whether there thread groups (in a JMeter test) to be overriden or not
-
shouldSendReportEmail
booleanSets the box for whether an email is sent upon completion of a test run
-
dependencies
objectThe test data mock service details to be used with this test.
-
services
arrayThe list of mock services to be used in this test
-
service
stringThe name of the mock service. Use the List Mock Services API to find the name
-
mock-service
stringThe name of the running mock service instance. Use the List Mock Services API to find the mock service
-
mock-service-template
stringThe name of the mock service template. Use the List Mock Service Templates API to find the template
-
-
data
arrayThe list of Service Data Entities to be used in this mock service. Service Data is Test Data for Mock Services.
-
entities
arrayThe list of Service Data Entities associated with this mock service. A Service Data Entity contains one or more Test Data Objects.
-
kind
stringThe kind of Test Data is "tdm".
-
type
stringThe type of Test Data is "object".
-
-
-
created
integerread-only
The time that the test was created
-
updated
integerread-only
The time that the test was last updated
-
projectId
integerThe
projectId
to which this test belongs -
lastUpdatedById
integerread-only
The ID of the last user that updated the test
-
configuration
objectContains all the advanced BlazeMeter related configurations (i.e. running file, JMeter properties, etc.)
-
type
stringrequired
The test type. Must be
taurus
-
dedicatedIpsEnabled
booleanUse dedicated IPs for test. Must have dedicated IPs for ALL locations configured
-
javaVersion
stringSets the Java version for the test. ONLY works for JMeter tests. Valid values:
1.7
1.8
9
11
-
canControlRampup
booleanread-only
If the user includes a Concurrency Thread Group in their JMX, this parameter indicates if the feature for pausing and resuming ramp-up is enabled
-
targetThreads
integerread-only
The target number of threads. For example:
500
-
executionType
stringread-only
This is the execution BlazeMeter uses to run the test. Always will be
taurusCloud
-
enableJMeterProperties
booleanEnables the JMeter Properties plugin
-
enableHostsOverride
booleanEnables the Hosts Override plugin
-
enableFailureCriteria
booleanEnables the Failure Criteria plugin
-
enableNetworkEmulation
booleanEnables the Network Emulation plugin
-
enableMockServices
booleanEnables the Mock Services plugin
-
scriptType
stringrequired
The script types available. Includes:
apiritif
gatling
grinder
jmeter
locust
nose
pbench
pytest
robot
selenium
siege
taurus
-
threads
integerThe number of threads each engine (serversCount) should use. For example,
250
.
Minimum:1
Maximum:1000
OR plan limit -
filename
stringrequired
The name of the file to start test with. For example,
BlazeDemoTest.jmx
. Note: You must also upload the file - see Upload or Update Asset Files -
testMode
stringrequired
The test mode this test will use. Can be the following values:
script
- Use when uploading your own script (i.e. Taurus YAML configuration, JMeter script, etc.)http
- Used for URL tests in BlazeMeter -
plugins
objectContains settings for shared folders, JMeter properties, and DNS overrides
-
remoteControl
arrayThe list of JMeter properties details
-
key
stringThe JMeter property name that is referenced in your JMeter script. ONLY available with JMeter tests
-
value
stringThe value you want to use in the JMeter propery. ONLY available with JMeter tests
-
-
hosts
arrayThe list of DNS override details
-
hostname
stringThe host IP or DNS (i.e. my.hostname.com)
-
ip
stringThe host IP/DNS override (i.e. 127.0.0.1)
-
-
newrelic
arrayThe list of New Relic
profileId
s added to this test -
sharedFolders
arrayList of
folderId
s to be included -
jmeter
objectThe JMeter version details
-
version
stringSet the JMeter version. Valid values:
auto
5.1
5.0
4.0
3.3
3.2
3.1
3.0
2.13
-
-
network
objectThe network emulation details
-
preset
stringThe name of this network emulation profile, if one of the preset configurations. Valid values:
Custom
Internet (Unlimited)
WiFi
3G-good
3G-normal
3G-poor
LTE
Cable
DSL
Edge-good
Edge-normal
Edge-poor
-
latency
integerThe network delay to simulate in milliseconds (customizable only for Custom
preset
value). For example,1050
. Minimum:0
Maximum:5000
-
bandwidth
integerThe network speed to simulate in kbps (customizable only for Custom
preset
value). For example,202703
. Minimum:0
Maximum:300000
-
packetloss
integerThe percent of packet loss to simulate (customizable only for Custom
preset
value). For example,24
. Minimum:0
, maximum:100
-
-
thresholds
objectThe list of failure criteria set
-
thresholds
arrayThe failure criteria deatils
-
field
stringThe failure criteria field title. For example,
responseTime.min
. Valid values:responseTime.avg
responseTime.percentile.0
responseTime.percentile.50
responseTime.percentile.90
responseTime.percentile.95
responseTime.percentile.99
responseTime.min
responseTime.max
responseTime.std
connectTime.avg
latency.avg
size.count
size.avg
size.rate
hit.count
hits.avg
hits.rate
duration.count
errors.count
errors.percent
errors.rate
-
label
stringThe label relevant to failure criteria. Specify
ALL
for all labels -
op
stringThe operation is used when checking the failure criteria against the real value. Includes:
eq
(equal),gt
(greater than),lt
(less than),ne
(not equal) -
stopTestOnViolation
booleanWhether to terminate the test if the failure criteria rule has failed. Default:
false
. Must haveslidingWindow
set totrue
to use -
value
stringThe failure criteria to check against. For example,
111
. Times are in milliseconds (ms) -
isEmpty
booleanDenotes if this is an empty failure criteria or not
-
-
ignoreRampup
booleanWhether to ignore failure criteria during rampup. Default:
false
. Must haveslidingWindow
set totrue
to use -
slidingWindow
booleanWhether to run failure criteria checks using a sliding window of one minute. Default:
false
-
-
dynaTrace
objectThe profile details for the DynaTrace APM integration
-
enabled
booleanDenotes if the DynaTrace APM is enabled or not
-
method
stringSignifies if this integration is using headers or the full integration. Possible values are as follows:
headers
fullIntegration
-
profiles
arrayThe list of DynaTrace
profileId
s added to this test
-
-
cloudWatch
objectThe CloudWatch APM integration profile details
-
newIntegration
booleanDenotes if this is a new integration or not
-
profiles
arrayThe list of CloudWatch
profileId
s added to this test
-
-
caApm
objectThe DX APM integration details
-
enabled
booleanDenotes if this profile is active or not in this test
-
method
stringSignifies if this integration is using headers or the full integration. Possible values are as follows:
headers
fullIntegration
-
profiles
arrayThe list of DX APM
profileId
s added to this test
-
-
appDynamics
arrayThe list of AppDynamics
profileId
s added to this test -
newRelicInsights
objectThe New Relic Insights profile details
-
credentialsId
string -
profiles
arrayThe list of New Relic Insights
profileId
s added to this test
-
-
userExperience
objectThe end user experience details
-
enabled
booleanDenotes if the End User Experience is enabled
-
pages
arrayThe list of pages to be run in the end user experience
-
label
stringLabel of the URL you a testing
-
url
stringURL to be tested
-
-
scenarios
arrayThe list of scenarios details
-
filename
stringThe filename of the Selenium file
-
scenario
stringread-only
Scenario for the file
-
-
-
-
Create a Test
API Explorer: /tests
To create a test:
- Create the test object with a POST to the test endpoint (see sample code).
- Capture the
testId
returned asid
from the response. - Upload test assets (such as scripts, data files or YAML Taurus configuration files) by using the
testId
and the code explained in the Upload or Update Asset Files section.
Create a Test Request Attributes
The following parameters are the base parameters required to create a test. See the Test Attributes for a complete list of parameters.
Create a Test
curl 'https://a.blazemeter.com/api/v4/tests' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name": "V4 Create Test Through API", "configuration": {"type": "taurus", "filename": "DemoTest.jmx", "testMode": "script", "scriptType": "jmeter"}}'
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Create a Test Create a Test POST Body (JSON)
{
"name": "Minimum_Required_Configuration_Sample",
"configuration": {
"type": "taurus",
"filename": "DemoTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
}
Attributes
-
name
stringrequired
The test name
-
configuration
objectContains all the advanced BlazeMeter related configurations (the running file, JMeter properties, and so on)
-
type
stringrequired
The test type, that is,
taurus
. -
filename
stringrequired
The name of the file (JMeter script, Taurus YAML configuration file, and so on) that will be used in the test. For example,
BlazeDemoTest.jmx
. Note: You must also upload the file, for more information, see Upload or Update Asset Files -
testMode
stringrequired
The test mode this test will use. Can be the following values:
script
- Use when uploading your own script (Taurus YAML configuration, JMeter script, and so on)http
- Used for URL tests in BlazeMeter -
scriptType
stringrequired
The script types available. Includes:
apiritif
gatling
grinder
jmeter
locust
nose
pbench
pytest
robot
selenium
siege
taurus
-
Create a Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 1234567,
"name": "Minimum_Required_Configuration_Sample",
"isNewTest": true,
"userId": 123456,
"created": 1551391783,
"updated": 1551391783,
"creatorClientId": "api",
"overrideExecutions": [],
"shouldSendReportEmail": true,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"filename": "DemoTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
}
}
For the full details of all the attributes for the Perforomace Test, you can visit The Test Object.
Upload or Update Asset Files
Upload or Update Asset Files
curl 'https://a.blazemeter.com/api/v4/tests/1234567/files' \
-X POST \
-F 'file=@/my/path/to/MyTest.jmx' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests/{testId}/files
To upload a file asset to a test, POST the file to the testId
(you need to know the testId
of the created test). Use the following template for the file path and name:
curl -X POST -F 'file=@path to file/file.ext' ...
The sample code uploads a file (@/my/path/to/MyTest.jmx
) to a test with an ID of 1234567
. Replace @/my/path/to/MyText.jmx
with the actual path and file name and 1234567
with your testId
.
To update the contents of an uploaded file, repeat the same operation (upload the updated file using the same file name).
Upload or Update Asset Files Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 1234567,
"isNewTest": true,
"name": "Typical Configuration Sample",
"userId": 123456,
"creatorClientId": "api",
"overrideExecutions": [
{
"executor": "jmeter",
"holdFor": "19m",
"rampUp": "1m",
"concurrency": 20,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario"
}
],
"shouldSendReportEmail": true,
"created": 1551635668,
"updated": true,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"filename": "MyTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
}
}
For the all the supported attributes, see the The Test Object.
File Naming Requirements
Make sure your file names:
- Only include alphanumeric characters, underscores or hyphens:
[0-9],[aA-zZ],[_-]
. - Include an extension
- DO NOT include spaces
For example:
The file name my_file_no_4.csv
– is good. The file name m$ file&
– is bad.
Limitations on File Content
BlazeMeter cannot read files containing non-ASCII characters. You must remove all non-ASCII characters from your files before uploading and starting a test.
File Size
BlazeMeter has a file size limit of 50 MB per file that can be uploaded. You can upload multiple files of up to 50 MB each, as needed.
Impact of Uploaded Files on Start Time
The number and size of uploaded test file assets impacts the start time of the test:
- All files are downloaded to each test engine each time a test starts
- A test will not start until all of the files are downloaded.
List Test Files
List Test Files
curl 'https://a.blazemeter.com/api/v4/tests/1234567/files' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests/{testId}/files
To return a list of files in a test, a testId
is required. The sample code returns a list of files for the test with testId
of 1234567
. Use the actual ID values for the test to return the list of its files.
List Test Files Parameters
Parameters
-
name
stringThe unique string for a filename to search for. For example, the string
MyScript.yaml
will pull all results with this string in thename
of the file
List Test Files Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"lastModified": 1592485932,
"name": "demoblaze.yml",
"size": 146,
"link": "https://storage.blazemeter.com/blazemeter-gcp/users/123456/tests/1234567/data/demoblaze.yml?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200620%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200620T140803Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=2d0d117c03e873ec6c3359807b21c4ae27b3cf8e55aabeb37d912d3177791ba4",
"linkExpire": 1592748483
}
],
"request_id": "5eee18439c6ed"
}
Attributes
-
lastModified
integerThe timestamp when the file was last modified
-
name
stringThe name of the file
-
size
integerThe size (in bytes) of the file
-
link
stringThe download link for the file. This link remains active for 20 minutes
-
linkExpire
integerThe timestamp of when the link will expire
Delete Asset File
Delete Asset File
curl 'https://a.blazemeter.com/api/v4/tests/1234567/delete-file' \
-X POST \
-H "Content-Type: application/json" \
--user 'api_key_id:api_key_secret' \
-d '{"fileName":"MyTest.jmx"}'
API Explorer: /tests/{testId}/delete-file
To delete an uploaded file from a created test, you need to know the testId
and the filename. The sample code deletes the file (MyTest.jmx
) from the test with an ID of 1234567
. Replace MyTest.jmx
with the actual file name and 1234567
with your testId
.
Delete Asset File Request Attributes
Delete Asset File Delete Asset File Sample POST Body (JSON)
{
"fileName": "MyTest.jmx"
}
Attributes
-
fileName
stringrequired
Denotes which file to delete
Delete Asset File Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": true
}
The result
attribute will be true
if the data file was deleted successfully.
Update a Test
Update a Test
curl 'https://a.blazemeter.com/api/v4/tests/1234567' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"New Test Name For API"}'
API Explorer: /tests/{testId}
To update a test, use PATCH to replace the provided parameter values for a test specified by its testId
.
The ID is assigned when you Create a Test.
If you do not know the testId
, use List Tests to return a list of all your existing tests to identify the ID.
The sample code shown here updates a test with an ID of 1234567
(the 1234567
is contained in the URL)
and it replaces the old parameter "name" with a new name value.
Another common example would be to update the "configuration" parameter,
or the "dependencies" parameter which contains test data.
See the Test Object for the attributes that you can modify.
Update a Test Request Attributes
Update a Test Update a Test PATCH Body (JSON)
{
"name": "New Test Name For API"
}
Attributes
-
name
stringThe test name
Update a Test Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 1234567,
"isNewTest": true,
"name": "New Test Name For API",
"userId": 123456,
"creatorClientId": "api",
"overrideExecutions": [
{
"executor": "jmeter",
"holdFor": "19m",
"rampUp": "1m",
"concurrency": 20,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6654357"
}
],
"hasThreadGroupsToOverride": false,
"hasNonRegularThreadGroup": false,
"shouldSendReportEmail": true,
"dependencies": {},
"created": 1551635668,
"updated": 1551717656,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"filename": "MyTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
},
"test": {
"id": 1234567,
"isNewTest": true,
"name": "New Test Name For API",
"userId": 123456,
"creatorClientId": "api",
"overrideExecutions": [
{
"executor": "jmeter",
"holdFor": "19m",
"rampUp": "1m",
"concurrency": 20,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6654357"
}
],
"shouldSendReportEmail": true,
"dependencies": {},
"created": 1551635668,
"updated": 1551717656,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"filename": "MyTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
}
}
For the all the supported attributes, see the The Test Object.
List Tests
List Tests
curl 'https://a.blazemeter.com/api/v4/tests?projectId=123456&workspaceId=123456&type=taurus' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests
To return a list of created tests, either a projectId
or a workspaceId
, and a type
attribute is required. The sample code returns a list for items with a projectId
of 123456
and a workspaceId
of 123456
and a type
of functionalApi
. Use the actual ID values for the project or workspace and one of the type
values (should use taurus
(performance tests)) to return the list of its tests.. Use the actual ID values for the project or workspace to return the list of its tests.
You can return a list specifying either a projectId
, a workspaceId
, or both and a type
. The returned list contains each test details that fit the criteria provided.
List Tests Paramaters
Parameters
-
projectId
integerrequired
The
projectId
you are wanting to get the list of tests from -
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of tests from -
name
stringThe unique string for a test name to search for. For example, the string
My Test
will pull all results with this string in thename
of the test -
platform
stringThe platform of tests to search for. This will always be
performance
for Performance tests -
type
stringSearches by the test type. The following values are for functional:
taurus
- Returns a list of Performance tests= -
hasExecutions
booleanShows the list of tests that have (if set to
true
) or have no (if set tofalse
) masters
Also see: Pagination and Sorting
List Tests Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 1,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 1234567,
"name": "New Test Name For API Documentation",
"isNewTest": true,
"userId": 123456,
"created": 1551635668,
"updated": 1551717656,
"creatorClientId": "api",
"overrideExecutions": [
{
"executor": "jmeter",
"holdFor": "19m",
"rampUp": "1m",
"concurrency": 20,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6654357"
}
],
"shouldSendReportEmail": true,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"filename": "MyTest.jmx",
"testMode": "script",
"scriptType": "jmeter"
}
}
]
}
For the all the supported attributes, see the The Test Object.
Test Details
Test Details
curl 'https://a.blazemeter.com/api/v4/tests/1234567' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests/{testId}
To return the details of a specific test, a testId
is required.
The sample code returns details for a testId
of 1234567
.
Use the actual ID value of your test.
Test Details API Functional Test Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 1,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 1234567,
"name": "My Test Name",
"isNewTest": true,
"userId": 123456,
"created": 1551635668,
"updated": 1551717656,
"creatorClientId": "api",
"overrideExecutions": [
{
"executor": "jmeter",
"holdFor": "19m",
"rampUp": "1m",
"concurrency": 20,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6654357"
}
],
"hasThreadGroupsToOverride": false,
"hasNonRegularThreadGroup": false,
"shouldSendReportEmail": true,
"dependencies": [],
"tags": [
{
"id": 158037,
"label": "Dummy"
}
],
"shouldRemoveJmeter": true,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": false,
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableFailureCriteria": false,
"enableMockServices": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "dummy_errors.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"fromTaurus": false,
"slidingWindow": false
}
}
},
}
}
]
}
For the all the supported attributes, see the The Test Object.
Duplicate a Test
Duplicate a Test
curl 'https://a.blazemeter.com/api/v4/tests/1234567/duplicate'
API Explorer: /tests/{testId}/duplicate
To duplicate a test suite, a testId
is required. The sample code duplicates the test suite with the testId
of 1234567
. Use the actual ID value for the test suite to return the detail of that test suite.
Duplicate a Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1599568309,
"name": "Assertions in V4 - Copy",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"locations": {
"us-east4-a": 10
},
"locationsPercents": {
"us-east4-a": 100
},
"rampUp": "1m",
"steps": 0,
"holdFor": "59m",
"throughput": 10
}
],
"executions": [
{
"concurrency": 10,
"usersNotConfigured": false,
"holdFor": "59m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"scenario": "default-scenario-123456"
}
],
"hasThreadGroupsToOverride": false,
"shouldSendReportEmail": false,
"dependencies": [],
"created": 1599840080,
"updated": 1599840080,
"projectId": 123456,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": false,
"canControlRampup": false,
"targetThreads": 300,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableFailureCriteria": true,
"enableMockServices": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 300,
"filename": "my-script.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [
{
"key": "myProperty",
"value": "aValue"
}
],
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [
{
"field": "responseTime.percentile.90",
"label": "200 and successfull assertion",
"op": "gt",
"stopTestOnViolation": true,
"value": "2000",
"isEmpty": false
},
{
"field": "responseTime.avg",
"label": "I don't exixt",
"op": "lt",
"stopTestOnViolation": false,
"value": "44",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"userExperience": {
"enabled": false,
"pages": [
{
"label": "Home",
"url": "https://www.demoblaze.com"
}
]
}
}
}
},
"request_id": "5f5b9f50963a4"
}
For the all the supported attributes, see the The Test Object.
Delete a Test
Delete a Test
curl 'https://a.blazemeter.com/api/v4/tests/1234567' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /tests/{testId}
To delete a test, DELETE its ID (you need to know the testId
). The sample code deletes a test with an ID of 1234567
. Use the testId
of the actual test to delete in place of the 1234567
.
If you do not know the ID of the test to delete, use the List Tests section to return a list of your created tests.
Response codes associated with deleting a test include 204
(if the test was successfully deleted) and 404
(if the testId
does not exist).
Multi Tests
When you create a multi test, you are creating a multi-test
and collection
object configured with specific parameters.
Once you have created a multi test, added tests
to the multi test, and have uploaded any required data files, you can start the test, which will create a master
for control and reporting.
You will also need the location id
to point your test configuration to the correct location(s) you want each test in the multi test to run.
The Multi Test Object
The Multi Test Object
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "A Full Test Settings Example",
"description": "A Full Test Settings Example",
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": 1598556724,
"draftId": null,
"filesToSplit": [
"colors.csv"
],
"dataFiles": [
"colors.csv"
],
"creatorClientId": "gui",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 1234567,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"serversCount": null,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
}
},
null
],
"enableLoadConfiguration": true
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"iterations": 50,
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 2345678,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"serversCount": null,
"iterations": 50,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
}
},
null
],
"enableLoadConfiguration": true
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1598555545,
"updated": 1598556724,
"note": null,
"projectId": 123456,
"lastUpdatedById": 123456,
"kpiTrackingData": null,
"tests": [
{
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1598556724,
"name": "Full Test Example",
"description": "A Full Test Settings Example",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"rampUp": "1m",
"steps": 0,
"throughput": 10
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"hasThreadGroupsToOverride": false,
"shouldSendReportEmail": false,
"dependencies": {
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
},
"created": 1598555261,
"updated": 1598555574,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": true,
"javaVersion": "11",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableHostsOverride": true,
"enableFailureCriteria": true,
"enableNetworkEmulation": true,
"enableMockServices": true,
"enableTestData": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [
{
"key": "newProperty",
"value": "aValue"
}
],
"hosts": [
{
"hostname": "my.hostname.com",
"ip": "10.24.25.100"
}
],
"newrelic": [
"5acc544d61a347b23d7b23c9"
],
"sharedFolders": [
"58e29fd7ca293bbb5c05776f"
],
"jmeter": {
"version": "5.3",
"consoleArgs": "",
"enginesArgs": ""
},
"network": {
"preset": "Custom",
"latency": 30,
"bandwidth": 300000,
"packetloss": 5
},
"thresholds": {
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"userExperience": {
"enabled": true,
"pages": [
{
"label": "Homepage",
"url": "https://blazedemo.com"
}
]
}
}
},
"fileErrors": []
},
{
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1598556724,
"name": "Full Test Example 2",
"description": "A Full Test Settings Example 2",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"rampUp": "1m",
"steps": 0,
"throughput": 10
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"hasThreadGroupsToOverride": false,
"shouldSendReportEmail": false,
"dependencies": {
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
},
"created": 1598555529,
"updated": 1598555586,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": true,
"javaVersion": "11",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableHostsOverride": true,
"enableFailureCriteria": true,
"enableNetworkEmulation": true,
"enableMockServices": true,
"enableTestData": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [
{
"key": "newProperty",
"value": "aValue"
}
],
"hosts": [
{
"hostname": "my.hostname.com",
"ip": "10.24.25.100"
}
],
"newrelic": [
"5acc544d61a347b23d7b23c9"
],
"sharedFolders": [
"58e29fd7ca293bbb5c05776f"
],
"jmeter": {
"version": "5.3",
"consoleArgs": "",
"enginesArgs": ""
},
"network": {
"preset": "Custom",
"latency": 30,
"bandwidth": 300000,
"packetloss": 5
},
"thresholds": {
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"userExperience": {
"enabled": true,
"pages": [
{
"label": "Homepage",
"url": "https://blazedemo.com"
}
]
}
}
},
"fileErrors": []
}
],
"masters": [
{
"id": 12345678,
"name": "A Full Test Settings Example",
"userId": 123456,
"ended": 1598558395,
"lastUpdate": 1598556876,
"delayedStartReady": true,
"runnerUserId": 123456,
"charges": [],
"terminateWorkersExecuted": false,
"maxUsers": 40,
"hasData": true,
"passed": true,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isPrivateData": false,
"isQueued": false,
"creatorClientId": "gui",
"executorClientId": "gui",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"locations": [
"us-east1-b",
"us-west1-a",
"us-east4-a"
],
"scenariosMapping": [
{
"id": "62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"name": "default-scenario-1234567",
"test": "Full Test Example",
"isEndUserExperience": false
},
{
"id": "a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"name": "End User Experience for Full Test Example",
"test": "Full Test Example",
"isEndUserExperience": true
},
{
"id": "ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"name": "default-scenario-2345678",
"test": "Full Test Example 2",
"isEndUserExperience": false
},
{
"id": "95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e",
"name": "End User Experience for Full Test Example 2",
"test": "Full Test Example 2",
"isEndUserExperience": true
}
],
"isDebugRun": false,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"testId": 1234567,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
},
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"iterations": 50,
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"testId": 2345678,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"concurrency": 42,
"useV4Pipeline": true,
"v4IndexerCollection": "{\"execution\":[1,2],\"execution:1\":[\"r-v4-5f480a1759499\",\"r-v4-5f480a175a25c\",\"r-v4-5f480a255b18d\"],\"session:1\":[\"r-v4-5f480a1759499\",\"r-v4-5f480a175a25c\",\"r-v4-5f480a255b18d\"],\"location:1\":[\"us-east1-b\",\"us-west1-a\",\"us-east4-a\"],\"execution:2\":[\"r-eux-5f480a175ace7\",\"r-eux-5f480a255ba84\"],\"session:2\":[\"r-eux-5f480a175ace7\",\"r-eux-5f480a255ba84\"],\"location:2\":[\"us-east4-a\"]}",
"isSelenium": false,
"rpsCompatible": false,
"remoteControlCompatible": true,
"hasMonitoringData": true,
"shouldSendReportEmail": true,
"shouldUseDaggerReport": true,
"hasDaggerData": true,
"kinesisStream": "prod-purp_v4pipeline_input",
"useJetlag": false,
"properties": [
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 1234567,
"locations": [
"us-east1-b",
"us-west1-a"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
},
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 2345678,
"locations": [
"us-east4-a"
],
"scenarios": [
"ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 20
}
],
"locations": [
"us-east1-b",
"us-west1-a",
"us-east4-a"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e"
]
}
],
"jetpackLabels": [
{
"id": "a33c1d47453499bb293a918912c7221b0207092445be4752cdd779ccb0b729a2",
"name": "Dummy Sampler 19-5"
},
{
"id": "38dcdb01dd33fcb6a174bc246d558ebe55c1e4f89b73af1c8101ff958d6d28f3",
"name": "Dummy Sampler 16-3"
},
{
"id": "482d2e3c84148a2a549ce24722c15ca49b9fbe0a7b8ecfe9b9600f21f47f2f26",
"name": "Dummy Sampler 5-4"
},
{
"id": "ddb1b74c3f9f21baac105072fbd95e879a946f47e23e40d7c00565a99acacd7d",
"name": "Dummy Sampler 8-5"
},
{
"id": "8d2c3b33df4519ef590751a725db1ab4f2d8af63f0230ecb8dfa04395b49142c",
"name": "Dummy Sampler 1-3"
},
{
"id": "92e28a957dd25ee6126ecfc56053a3b417867e254777bacf91ddf35b016fd8d7",
"name": "Dummy Sampler 18-3"
},
{
"id": "598fe62bc04988ae02ee66948b62ce5cb51aea16cfcd790e398f3b176b125543",
"name": "Dummy Sampler 8-3"
},
{
"id": "6db63263206a77caf33733fa38cca9daa3af616ee02fa331cdf4ef08ff07c20c",
"name": "Dummy Sampler 10-1"
},
{
"id": "05370c567029cd96cdd248188806f0f9ea114277ed0ec1fab4b616964dfbba7f",
"name": "Dummy Sampler 10-3"
},
{
"id": "778b52e53a9424f23a05b4702455800f338e8990d5cfdf01606ea25eb1d6dcfc",
"name": "Dummy Sampler 9-2"
},
{
"id": "9ac8a6ff734a9691570e63eb3cb383c3b8b2b78560756c5048e22f995fe9cd98",
"name": "Dummy Sampler 16-1"
},
{
"id": "91132961357b44bcca8cd41ab98e51ea52bb79635a6fbd2ed846793db5327960",
"name": "Dummy Sampler 8-2"
},
{
"id": "ad82592ee55bdfd3b498f9882fbcdcb06768b300e4601c7697d92ac546660181",
"name": "Dummy Sampler 18-5"
},
{
"id": "47687360da0c21b9b8c24a330319e5106eb2212f5ef4d93a4f566cb15284cf81",
"name": "Dummy Sampler 7-5"
},
{
"id": "cbd50211d966c8460e31be9a0622aa1ef614c10626c86013edee4b8ffe995d63",
"name": "Dummy Sampler 3-2"
},
{
"id": "63424082d2caf18377d1d0511fe9b11bf6362eea1802c95f08352edc3c8a7a9f",
"name": "Dummy Sampler 20-3"
},
{
"id": "90a45f6678302659a4ba252cf7169c76663c4a08bd73331b00a6ecd630e8ec03",
"name": "Dummy Sampler 8-1"
},
{
"id": "04493fa0833a77105483f32fe2a32e1baca420ea9d6cda52e876010f91b2e087",
"name": "Dummy Sampler 6-3"
},
{
"id": "a33853e884ae4a2f332974875b8f8f0a4521c8c28112e9910b52680582f72dbb",
"name": "Dummy Sampler 7-1"
},
{
"id": "c646927269709fd3d09c9119fcc5b759e9e02ee703d22b8380ef4ed9bdbd1496",
"name": "Dummy Sampler 5-1"
},
{
"id": "9e68beca618ecf994e32d275abae1fd5ab889291befe15ae040e632f30d72f84",
"name": "Dummy Sampler 16-5"
},
{
"id": "e6ea544605da60c4de5d5d1c3a47a28c532c6c1e4f58c5747def5224b31eb3e9",
"name": "Dummy Sampler 6-1"
},
{
"id": "ecaf89656817ae7dd9c8cc7c9124dfe2af0e7ee8b6c72c62731ca597245e6df5",
"name": "Dummy Sampler 3-4"
},
{
"id": "34477ff95bb9c9db10f9f61c081e8ac8c07b0d8f7334396d7afee98526de1f90",
"name": "Dummy Sampler 13-2"
},
{
"id": "abcf80cf607ea2dee316b200578d7f111654011b417c6c2aee7bb7940659ea6b",
"name": "Dummy Sampler 11-2"
},
{
"id": "868ec8f6c10315c31b1c48a07ce3087f7af4c33cbbca2af9f1137e99a87528ad",
"name": "Dummy Sampler 10-4"
},
{
"id": "6ee11a45e8d1a5ff876fbdc353222498de95de841cb4ac54e977507fe117ba37",
"name": "Dummy Sampler 1-5"
},
{
"id": "ede4ebab4eca182748b1e2a67dd8ab9a3bf7fb6779fd30fa368be69cee505ed0",
"name": "Dummy Sampler 11-5"
},
{
"id": "e1b1583297ba88ea9692c62e653f9e05a117c296d425d28921b0ea0ade936118",
"name": "Dummy Sampler 2-3"
},
{
"id": "48fb09b24a0ba3106d2a69267c586cd72b46a6690601cfe981e11dfb364be295",
"name": "Dummy Sampler 2-4"
},
{
"id": "83f4936378767c2e7ed7c016c15c4f6ddc8fc79bf582319c0e5e9202b56cd5d9",
"name": "Dummy Sampler 15-2"
},
{
"id": "621ef52f19f5ee20b3dc113ca98fd4e76b9baa235f330cc7b4f52089a7ecc6a9",
"name": "Dummy Sampler 14-5"
},
{
"id": "0d97e91dc6d283eb0e8d67fbc4ce57684999f223a4ae46e255d93f0be10058c1",
"name": "Dummy Sampler 15-4"
},
{
"id": "c07913d9d35b4071bbf32ceade632e424e173ba0eb616adf5749f613f5596c87",
"name": "Dummy Sampler 5-3"
},
{
"id": "855c41608c960154b1a940db88eb07a6e2ebd670ae17bcf1c9949089645569b1",
"name": "Dummy Sampler 7-3"
},
{
"id": "5322c068c11819ca569e53f83db83ee0c7de04f131f5163d67071cb1697cce49",
"name": "Dummy Sampler 9-1"
},
{
"id": "0656cd0ee5501a550338a725de214239f39aaa90b30cf9d0231f71a01c8f6a2e",
"name": "Dummy Sampler 1-2"
},
{
"id": "503a51d46af9a41c84f14c6c0d58bf93c5f28da66fd71356fa6ccd8cdf062b2e",
"name": "Dummy Sampler 6-4"
},
{
"id": "c21cc688dc79cc813588c83720a676308b5713747f01bab1b9ded2729ae87a2e",
"name": "Dummy Sampler 9-3"
},
{
"id": "774a039661eb7bbf98665e4d3d28d897de8287e38c190400d8eae2a81dbead99",
"name": "Dummy Sampler 9-5"
},
{
"id": "76b730928743456b46da5cc919aab783cc9780ee49267ab1ea37af9002c48002",
"name": "Dummy Sampler 3-1"
},
{
"id": "bef502394f3d70755b4bd61f527b2b21477d3cbd727b72943af5deb84c29cf25",
"name": "Dummy Sampler 11-1"
},
{
"id": "99ee3d9fd98eac61d70ba85d8171b972356efa76fe998b762727607bfa44774a",
"name": "Dummy Sampler 4-5"
},
{
"id": "b519917b55a2e594146ec7380f658dd1ec485bd0c772ae1dbe28d84aea8e68fb",
"name": "Dummy Sampler 16-4"
},
{
"id": "66c400f522edc78b20cc31742ef1ee72de8e9bd652f119da0a9e619bdcfd5f10",
"name": "Dummy Sampler 7-2"
},
{
"id": "da87cde32eb7caa848ef8da42f4c52b2dba0f055bca2be633d0c893b849c4f04",
"name": "Dummy Sampler 15-1"
},
{
"id": "0f8344b783b59a723f7b49f7ec569f4c0c4fd860bd3ef1cdf5d8ac8f8b1b5cb5",
"name": "Dummy Sampler 1-4"
},
{
"id": "25398874fb563a5732b4d20423e826511aa54359a465bdc1c63ea2f6c0ca98e7",
"name": "Dummy Sampler 11-4"
},
{
"id": "502fb1b78f92a6a9233d9b3c1d8f6d8735817fd8c9abd4f5793178fc287d47d0",
"name": "Dummy Sampler 14-1"
},
{
"id": "68a3bd366768242345da1609c8d2b826eef695feb2dcd7533e752830396f2438",
"name": "Dummy Sampler 15-5"
},
{
"id": "877e982d386229478e921a65cbbaa84fb1c14e58d5754216372ea07f79fffcce",
"name": "Dummy Sampler 4-1"
},
{
"id": "6a8331f28925eae87d618fa2a7d34044c8a4640e7f08850d0888737d9e79734d",
"name": "Dummy Sampler 5-5"
},
{
"id": "84a5f2ae39aaf71778af767f85d70e725c24816cd0a9f7f8bdb65945e6730250",
"name": "Dummy Sampler 14-2"
},
{
"id": "426b8776c5aea18236671c2031b79e03e36ae61e9525274ff37c4abd8cbf402a",
"name": "Dummy Sampler 4-3"
},
{
"id": "d26beb176d6172083f44e386db016ffe202064b9473b565dec7faed943579b99",
"name": "Dummy Sampler 4-4"
},
{
"id": "fa5901c964290213a727630018d745079de4d55b2951913a6fd29db41cf020b8",
"name": "Dummy Sampler 11-3"
},
{
"id": "5421f70a20a4cc21671898f969227cf0f7945d8bb64748fe24e97ad8ee12a4bd",
"name": "Dummy Sampler 3-3"
},
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL"
},
{
"id": "3c62fe114a84758fc274ef77eeda9ba81e0c0de495ff2786da892245ca25d8a4",
"name": "Dummy Sampler 7-4"
},
{
"id": "6be96150c1e953e08a3a1911d9db6ce1f36946840832ea4d3367c781fd2ac6c0",
"name": "Dummy Sampler 1-1"
},
{
"id": "c5f2e3537e2b7f2fa204abf63de8bc339036b7eee0f9fcb7168995cf3842a04d",
"name": "Dummy Sampler 2-5"
},
{
"id": "e934b78602eea603ed22388d47aa3090ec643c8dcd604a1ded0f21e8b97f84d3",
"name": "Dummy Sampler 5-2"
},
{
"id": "83acc6011cbf9ab77ebbc1926e0efb3d38891f39b5df0a92f730d9e7ebd54677",
"name": "Dummy Sampler 12-3"
},
{
"id": "8ad90e3eac6ba9a4919c58e925e99cedf15e897827778da751f5db68a56330bf",
"name": "Dummy Sampler 19-3"
},
{
"id": "0afba9498eb0587a5be28586c9fa0111de1bf3475dbe9618ec75e4f46814de56",
"name": "Dummy Sampler 2-1"
},
{
"id": "4e55dd94b0687148f4d3fb819da192caf00af1da9ab4e794922ecee2eb9bcca4",
"name": "Dummy Sampler 3-5"
},
{
"id": "07f8cd6ee5c77a7e8ed1430254f701d6fec3ef0aed713d34816734877b8bc086",
"name": "Dummy Sampler 4-2"
},
{
"id": "d0dd6e4b1eddc8042df773895be292546b71244763b6dbe5f456888d759a0636",
"name": "Dummy Sampler 10-2"
},
{
"id": "aca092e4f1a598ba2ce9fe4d9fbbaeb48be4eee63bff89fd222a38d2d4375871",
"name": "Dummy Sampler 12-1"
},
{
"id": "de5a49b6043c130e9fd482dfff6e039106c712db6471cf1f41f17b702ae1560b",
"name": "Dummy Sampler 6-2"
},
{
"id": "86922481745cf212fa85c1ee4b740df8546a853464a982eb3042dde4ce191fc4",
"name": "Dummy Sampler 14-3"
},
{
"id": "5a212f0d83b87585c312053aa3d9356faedcd7c83e2e862856bfab3bb352ddb3",
"name": "Dummy Sampler 9-4"
},
{
"id": "166a88b346c9a3c8c051c6b0cd33a3b3a889a75e66c9baf7307583705d335cd4",
"name": "Dummy Sampler 13-5"
},
{
"id": "687b26024f35d0e43abbe63c1ebf07ab893c27adec485a65868efd1745d35dac",
"name": "Dummy Sampler 12-2"
},
{
"id": "c013b818a253f344d1109bebece47c68eefb8a09e7614ad6665a53faf52bcc5b",
"name": "Dummy Sampler 8-4"
},
{
"id": "9917793e35334cc9e0ac8dddda32974caf006a34f1c0fc53915c07ec45165b42",
"name": "Dummy Sampler 12-4"
},
{
"id": "b8053a39eb9f4fc919b5d9ba0307a4f2c8a06609269bbc1bbb83c3ad39282978",
"name": "Dummy Sampler 13-4"
},
{
"id": "b9709d6c6edcba4fe3e44175285d35afd81a7d3a1eb3e3805ea3b48b6dcb789a",
"name": "Dummy Sampler 12-5"
},
{
"id": "ae6e735e39c6f1728918082eb5ff2cc38533fb2d99acb4cce25b591dd7c24aec",
"name": "Dummy Sampler 13-3"
},
{
"id": "2eeb16c4592db1dfb1968c839da1470319dc2e8115d762d88a0f3c3939af3db8",
"name": "Dummy Sampler 14-4"
},
{
"id": "4829ecac0001f3438346a69f721931d4dc9dc0fe4422bb6d89cc645c9020496d",
"name": "Dummy Sampler 15-3"
},
{
"id": "c5537625bcad55ff83d5d77458e4ebed42d6af21c6838cebf978cc417b921cc2",
"name": "Dummy Sampler 17-1"
},
{
"id": "2c4c77b439900407b286f4eb33b7160d476a16af900ca18a654ad7e061e47217",
"name": "Dummy Sampler 10-5"
},
{
"id": "470dd9efd4931dfb53a09dc548a601a71d3440016927b2122649463e5549da52",
"name": "Dummy Sampler 20-5"
},
{
"id": "73aa5e01278dab139d90c1e9aa23c990382944709cceac06d10cd65a4b831d7f",
"name": "Dummy Sampler 6-5"
},
{
"id": "140a676f713f0eb2bf0fae3b90a60962710215f0bb019a8b66ad7647877ea552",
"name": "Dummy Sampler 18-1"
},
{
"id": "1567863ec25cafbcb2096f6df70fd9a09795f54e3320d567cbfb15745c3f75b0",
"name": "Dummy Sampler 17-2"
},
{
"id": "3077351f2d30ec1d9ae04ffe650bd48c170f285b605f6361d35fe062a3ee49b3",
"name": "Dummy Sampler 17-3"
},
{
"id": "6c27df800121d70a8bd7b1e5d44e6b6df537c7701cc3a1e6fe4360f24e313814",
"name": "Dummy Sampler 20-4"
},
{
"id": "214d463309bc94e927761a111c2fb2f8a71d68d385a04de41953d654c78fe730",
"name": "Dummy Sampler 16-2"
},
{
"id": "ce873b3e1ee8b6cb68b054d5183a477074921c18e8b76b32ed7b131a666160b1",
"name": "Dummy Sampler 18-2"
},
{
"id": "585ee62293662d8e2c161c2621efe4e4b7d8e7cd8de5d19699ee943fb7e0d4f9",
"name": "Dummy Sampler 2-2"
},
{
"id": "dee07183c003946de4025ba7254aae42ba735fd3c0c5c16ed25e3f7781afaf42",
"name": "Dummy Sampler 17-4"
},
{
"id": "5a89b5ddc9ad089d0710d21a353cef4aceae32986d878b9fba63caa078413c7d",
"name": "Dummy Sampler 18-4"
},
{
"id": "462afc6b4bd64d9c36b76647a73f0d6804d2040bf0144eb120eb0a62271161aa",
"name": "Dummy Sampler 13-1"
},
{
"id": "a84e1865e6521543fe19aebb2a17880758c3eedd3862d77406ced6ba32173471",
"name": "Dummy Sampler 17-5"
},
{
"id": "604f26d4fd943ca3f9151b787861fb38418981ebde5c1d895eccc0c27dee1bc8",
"name": "Dummy Sampler 20-1"
},
{
"id": "f2259feb82136c0a9e7741a26064a9dc481b4eba05aec62255a7e6730c3ef58a",
"name": "Dummy Sampler 20-2"
},
{
"id": "6cd919cc493c050f18cf5a51b011072cdb16aa89128ce77082698447ceebf736",
"name": "Dummy Sampler 19-1"
},
{
"id": "37bb60ebb0d33cff3b0781173dd81565132d5f8765ddda7c28300665f78aff77",
"name": "Dummy Sampler 19-2"
},
{
"id": "a2d3f40bbbd4ca65daa242eaeca2473f35dcc1b594f2c047fb8941df1131a3be",
"name": "Dummy Sampler 19-4"
}
],
"dependencies": [
{
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
}
],
"env": "https://a.blazemeter.com",
"enableFailureCriteria": {
"1234567": true,
"2345678": true
},
"enableLoadConfiguration": true,
"created": 1598556695,
"updated": 1598558701,
"thresholds": [
{
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true,
"testId": 1234567
},
{
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true,
"testId": 2345678
}
]
}
]
},
"request_id": "5f4819c52ed93"
}
Attributes
-
id
integerread-only
The unique identifier of the multi test. This is known as the
collectionId
-
name
stringrequired
The multi test name
-
description
stringA description of the multi test
-
collectionType
stringrequired
The type of multi test. Always will be
multiV4
-
userId
integerread-only
The unique identifier of the user who created the multi test
-
lastRunTime
integerread-only
Time the test was last run
-
filesToSplit
arrayList of data files that have split CSV turned on. Must be included in the dataFiles attribute
-
dataFiles
arrayList of data files attached to multi test
-
creatorClientId
stringread-only
The ID of the creator client. Can be
api
(if created by API) orgui
(if created through the GUI) -
testsForExecutions
arrayThe list of tests that will be executed with this multi test
-
testId
integerThe
testId
of test within multi test -
executions
arrayThe execution settings from the file or last test run for this test
-
concurrency
integerread-only
The number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
usersNotConfigured
booleanread-only
Denotes if the
concurrency
override has been set or not -
holdFor
stringread-only
The length of time the test will run at the peak concurrency (same as
hold-for
in Taurus) -
durationIsNotConfigured
booleanread-only
Denotes if the
hold-for
override has been set or not -
rampUp
stringread-only
The length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus) -
steps
integerread-only
-
iterations
integerread-only
The number of iterations to run the test with. Will always be
1
for this test type. Same asiterations
in Taurus -
throughput
integerread-only
The maximum throughput allowed (same as
throughput
in Taurus) -
locations
objectread-only
The locations where the test will run
-
location Id
integerread-only
A
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the number of users you want to run on that location. Use this ORlocationsPercents
data, not both
-
-
locationsPercents
objectThe percentage of users each location gets
-
location id
integerread-only
A
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the percentage of users you want to run on that location. Use this ORlocations
data, not both
-
-
executor
stringread-only
The script type you are running. Includes the following:
gatling
grinder
jmeter
locust
pbench
selenium
siege
-
testId
integerread-only
The
testId
of test within multi test -
scenario
stringread-only
BlazeMeter scenario reference for BlazeMeter reports
-
executionSource
stringread-only
Tells BlazeMeter to run the selenium scenario for End User Experience under these settings
-
-
overrideExecutions
arrayThe override settings from the file or last test run for this test. Not used in multi tests
-
concurrency
integerThe number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
holdFor
stringThe length of time the test will run at the peak concurrency (same as
hold-for
in Taurus). Values can be provided inm
(minutes) only -
rampUp
stringThe length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus). Values can be provided inm
(minutes) only -
steps
integerThe number of rampup steps (same as
steps
in Taurus). This can be empty -
throughput
integerThe maximum throughput allowed (same as
throughput
in Taurus). This can be empty
Minimum:1
Maximum:concurrency
value -
locations
objectThe locations where the test will run
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the number of users you want to run on that location. Use this ORlocationsPercents
data, not both
-
-
locationsPercents
objectThe percentage of users each location gets
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the percentage of users you want to run on that location. Use this ORlocations
data, not both -
us-west1-a
integer
-
-
-
enableLoadConfiguration
booleanDenotes if the load is being configured through BlazeMeter or not
-
-
shouldSendReportEmail
booleanDenotes if an email will be sent after the report is completed or not
-
created
integerread-only
The time that the test was created
-
updated
integerread-only
The time that the test was last updated
-
projectId
integerread-only
The
projectId
to which this test belongs. Can only be set upon creation and cannot be changed afterwards -
lastUpdatedById
integerread-only
The ID of the last user that updated the test
-
tests
arrayA list of test details attached to this multi test
-
Test Object object
read-only
See the Test Object Attributes for the full details of this section
-
-
masters
arrayA list of master details attached to this multi test
-
Master Object object
read-only
See the Master Object Attributes for the full details of this section
-
Create a Multi Test
API Explorer: /multi-tests
To create a multi test:
- Create the multi-test object with a POST to the test endpoint (see sample code).
- Capture the
collectionId
returned asid
from the response. - Add tests to multi test by using the
collectionId
, which is explained in the Add Tests to Multi Test section. - Edit the test configurations for individual test, which is explained in the Edit Tests in Multi Test section.
- Upload data files by using the
collectionId
and the code explained in the Upload or Update Data Files section.
See Update a Multi Test for more information.
Create A Multi Test Request Attributes
Create a Multi Test
curl 'https://a.blazemeter.com/api/v4/multi-tests' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"collectionType": "multiV4","name": "Minimum Configuration","projectId": 123456}'
Create a Multi Test Create a Multi Test POST Body (JSON)
{
"collectionType": "multiV4",
"name": "My Multi Test",
"projectId": 123456
}
Attributes
-
collectionType
stringrequired
The type of multi test. Always will be
multiV4
-
name
stringrequired
The name of the multi test
-
projectId
integerrequired
The
projectId
to which this multi test belongs
Create a Multi Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "My Multi Test",
"collectionType": "multiV4",
"userId": 123456,
"created": 1552063283,
"updated": 1552063283,
"creatorClientId": "api",
"shouldSendReportEmail": true,
"projectId": 123456,
"filesToSplit": [],
"dataFiles": []
}
}
For the full details of all the attributes for the GUI Functional Test, you can visit The Multi Test Object.
Add Tests to Multi Test
Add Tests to Multi Test
curl 'https://a.blazemeter.com/api/v4/collections/12345678/add-tests-executions' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '["1234567", "2345678"]'
API Explorer /collections/{collectionId}/add-tests-executions
To add tests to a multi test, you need to provide a list of testId
s to be added. The sample code to the right is adding 2 tests (testId
1234567
and 2345678
) to the multi test with collectionId
of 12345678
. Replace the testId
s for each test you want to include (as strings) and replace collectionId
12345678
with the collectionId
of your multi test.
Add Tests to Multi Test Request Attributes
Add Tests to Multi Test Add Tests to Multi Test POST Body (JSON)
[
"1234567",
"2345678"
]
Attributes
-
testId
arrayrequired
List of
testId
s to be added to test. ThetestId
MUST all be in the sameprojectId
and these values need to be a string
Add Tests to Multi Test Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "My Multi Test",
"description": null,
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": null,
"draftId": null,
"filesToSplit": [],
"dataFiles": [],
"creatorClientId": "api",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1552063283,
"updated": 1552068365,
"note": null,
"projectId": 123456,
"lastUpdatedById": null,
"kpiTrackingData": null,
"tests": [
{
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "New Dummy Test V4 2",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6426953"
}
],
"shouldSendReportEmail": false,
"created": 1542289535,
"updated": 1552060217,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
},
{
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "Parallel Controller Script V4",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6490190"
}
],
"shouldSendReportEmail": false,
"created": 1545324446,
"updated": 1552060219,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "DummyParallelControllerGenerateParent.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
}
],
"masters": []
}
}
For the full details of all the attributes for the GUI Functional Test, you can visit The Multi Test Object.
Edit Tests in Multi Test
Edit Tests in Multi Test
curl 'https://a.blazemeter.com/api/v4/collections/12345678/override-tests-executions' \
-X PUT \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"index":0,"overrideExecutions":[{"concurrency":10,"executor":"jmeter","holdFor":"19m","locations":{"us-east-1":10},"locationsPercents":{"us-east-1":100},"rampUp":"1m","steps":0,"locationsWeighted":null}]}'
API Explorer /collections/{collectionId}/override-tests-executions
To edit a test in a multi test, you need to provide the index
of the test you want to change and setting the overrideExecutions
values to the desired values. You will need to know where in the list of tests the test you want to edit resides in using either the Add Tests to Multi Test response or List Multi Tests.
The sample code to the right is changing the number of users for the first test in the multi test with collectionId
of 12345678
. Replace the values for each attribute in the test you want to change and replace collectionId
12345678
with the collectionId
of your multi test.
Edit Tests in Multi Test Request Attributes
Edit Tests in Multi Test Edit Tests in Multi Test POST Body (JSON)
{
"index": 0,
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
}
Attributes
-
index
integerrequired
Denotes which test will be updated. For example,
0
will reference the first test attached to the multi test -
overrideExecutions
arrayThe test settings used when running the test in BlazeMeter
-
concurrency
integerThe number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
executor
stringThe script type you are running (similar to
executor
in Taurus). Includes the following:gatling
grinder
jmeter
locust
pbench
selenium
siege
-
holdFor
stringThe length of time the test will run at the peak concurrency (same as
hold-for
in Taurus). Values can be provided inm
(minutes) only -
locations
objectThe locations where the test will run
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the number of users you want to run on that location. Use this ORlocationsPercents
data, not both
-
-
locationsPercents
objectThe percentage of users each location gets
-
location Id
integerA
location Id
is needed to reference the correct location. You can add more locations as key-pair values as needed. The value will be the percentage of users you want to run on that location. Use this ORlocations
data, not both
-
-
rampUp
stringThe length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus). Values can be provided inm
(minutes) only -
steps
integerThe number of rampup steps (same as
steps
in Taurus). This can be empty
-
Edit Tests in Multi Test Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "My Multi Test",
"description": null,
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": null,
"draftId": null,
"filesToSplit": [],
"dataFiles": [],
"creatorClientId": "api",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 10,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
}
],
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0,
"locationsWeighted": null
}
]
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1552063283,
"updated": 1552077214,
"note": null,
"projectId": 123456,
"lastUpdatedById": null,
"kpiTrackingData": null,
"tests": [
{
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "New Dummy Test V4 2",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
}
],
"shouldSendReportEmail": false,
"created": 1542289535,
"updated": 1552060217,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
},
{
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "Parallel Controller Script V4",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-2345678"
}
],
"shouldSendReportEmail": false,
"created": 1545324446,
"updated": 1552060219,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "DummyParallelControllerGenerateParent.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
}
],
"masters": []
}
}
For the full details of all the attributes for the GUI Functional Test, you can visit The Multi Test Object.
Delete a Test in Multi Test
Delete a Test in Multi Test
curl 'https://a.blazemeter.com/api/v4/collections/12345678/remove-tests-executions' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"index": 1}'
API Explorer /collections/{collectionId}/remove-tests-executions
To remove a test from a multi test, you need to provide the index
value of the test you want to remove. In the example to the right, the index
value provided was 1
, which references the second test in the multi test with the collectionId
of 12345678
, is deleted from the multi test.
Delete a Test in Multi Test Request Attributes
Delete a Test in Multi Test Delete a Test in Multi Test POST Body (JSON)
{
"index": 1
}
Attributes
-
index
integerrequired
Denotes which test will be updated. For example,
0
will reference the first test attached to the multi test
Delete a Test in Multi Test Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "My Multi Test",
"description": null,
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": null,
"draftId": null,
"filesToSplit": [],
"dataFiles": [],
"creatorClientId": "api",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 10,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
}
],
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0,
"locationsWeighted": null
}
]
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1552063283,
"updated": 1552081344,
"note": null,
"projectId": 167798,
"lastUpdatedById": null,
"kpiTrackingData": null,
"tests": [
{
"id": 6426953,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "New Dummy Test V4 2",
"userId": 344260,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6426953"
}
],
"shouldSendReportEmail": false,
"created": 1542289535,
"updated": 1552060217,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
}
],
"masters": []
}
}
For the full details of all the attributes for the GUI Functional Test, you can visit The Multi Test Object.
Upload or Update Data Files
To upload or update an asset file, first get a signed URL, and then use it to upload the file.
If you are a private cloud user, please see this link for the steps for uploading data files to a multi test.
Get Signed URL
Upload or Update Data Files Get Signed URL
curl 'https://a.blazemeter.com/api/v4/collections/12345678/s3/sign?fileName=colors.csv' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": "https://blazemeter.s3.amazonaws.com/users/123456/collections/12345678/data/colors.csv?x-amz-acl=private&x-amz-server-side-encryption=AES256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJPZOF6U7I33QK2CQ%2F20190308%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190308T215448Z&X-Amz-SignedHeaders=host%3Bx-amz-acl%3Bx-amz-server-side-encryption&X-Amz-Expires=1200&X-Amz-Signature=dd007f7bc743928d9ea71e980e40569771d40a1277ecd53cffe672f1526d9e22"
}
API Explorer: /collections/{collectionId}/s3/sign
First, use the collectionId
and fileName
to get a signed URL, which will later be used to upload the specified file to the test. The sample code returns a URL for a collectionId
of 10027459
and a fileName
of colors.csv
. Replace colors.csv
with the actual file name, and 10027459
with your collectionId
.
Upload File to Signed URL
Upload or Update Data Files Upload File to Signed URL
curl 'https://blazemeter.s3.amazonaws.com/users/123456/collections/12345678/data/colors.csv?x-amz-acl=private&x-amz-server-side-encryption=AES256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJPZOF6U7I33QK2CQ%2F20190308%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190308T215448Z&X-Amz-SignedHeaders=host%3Bx-amz-acl%3Bx-amz-server-side-encryption&X-Amz-Expires=1200&X-Amz-Signature=dd007f7bc743928d9ea71e980e40569771d40a1277ecd53cffe672f1526d9e22' \
-X PUT \
-H 'Content-Type: application/json' \
--data-binary '@/my/path/to/colors.csv'
Response 200 OK
Once you have obtained the signed URL (from the result
attribute of Get Signed URL section), construct a PUT request with the file as your body. Use the following template for the file path and name:
'file=@*path to file*/*file*.*ext*'
In the example to the right, replace @/my/path/to/colors.csv
with the actual path and file name.
To update the contents of an uploaded file, repeat the same two-step operation (GET signed url, PUT the file in the signed url given). Be sure to upload the updated file using the same file name.
Data File Requirements
The file naming requirements, limitations on file content, file size and impact of uploaded files on start time remain the same as the single test.
List Data Files
List Data Files
curl 'https://a.blazemeter.com/api/v4/multi-tests/12345678/files' \
--user 'api_key_id:api_key_secret'
API Explorer: /multi-tests/{collectionId}/files
To return a list of files in a test, a collectionId
is required. The sample code returns a list of files for the test with collectionId
of 12345678
. Use the actual ID values for the test to return the list of its files.
List Data Files Parameters
Parameters
-
filter
stringThe unique string for a filename to search for. For example, the string
color.csv
will pull all results with this string in thename
of the file. Must be the full name of the file that was uploaded
List Data Files Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"lastModified": 1598555803,
"name": "colors.csv",
"size": 84,
"link": "https://storage.blazemeter.com/blazemeter-gcp/users/123456/collections/12345678/data/colors.csv?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200902%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200902T185544Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=d4ad38efe23994d8938176696df5a73087ffda1caf23d277b5ad588255cce3d3",
"linkExpire": 1599159344
}
],
"request_id": "5f4feaafd80aa"
}
Attributes
-
lastModified
integerThe timestamp when the file was last modified
-
name
stringThe name of the file
-
size
integerThe size (in bytes) of the file
-
link
stringThe download link for the file. This link remains active for 20 minutes
-
linkExpire
integerThe timestamp of when the link will expire
Delete Data Files
Delete Data Files
curl 'https://a.blazemeter.com/api/v4/collections/12345678/delete-file' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"fileName":"colors.csv"}'
API Explorer: /collections/{collectionId}/delete-file
To delete a data file from a multi test, you need to send the fileName
of the file you want to remove from the multi test. In the sample code to the right, we are wanting to delete the colors.csv
file, so the fileName
value needs to match colors.csv
. This will then delete the colors.csv
file from collectionId
12345678
.
You should set the collectionId
with your multi test's ID and the fileName
colors.csv
should be replaced with a file that exists in your multi test.
Delete Data Files Request Attributes
Delete Data Files Delete Data Files POST Body (JSON)
{
"fileName": "colors.csv"
}
Attributes
-
fileName
stringrequired
Denotes which file to delete
Delete Data Files Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": true
}
The result
attribute will be true
if the data file was deleted successfully.
Update a Multi Test
Update a Multi Test
curl 'https://a.blazemeter.com/api/v4/collections/12345678' \
-X PUT \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"description": "This is an update."}'
API Explorer: /collections/{collectionId}
To update a multi test, use PUT to change the provided configuration for a given test (you need to know the collectionId
). The sample code updates a multi test with an ID of 12345678
(the 12345678
is contained in the URL) with a new description, This is an update.
. The sample code updates the test created in the Create a Multi Test section.
If you do not know the collectionId
of the test to update, use List Multi Tests to return a list of your created tests.
See the Multi Test Object for all parameters that you can modify.
Update a Multi Test Request Attributes
Update a Multi Test Update a Multi Test PUT Body (JSON)
{
"description": "This is an update."
}
Attributes
-
description
stringA description of the test
Update a Multi Test Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "My Multi Test",
"description": "This is an update.",
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": null,
"draftId": null,
"filesToSplit": [],
"dataFiles": [],
"creatorClientId": "api",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 10,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
}
],
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0,
"locationsWeighted": null
}
]
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1552063283,
"updated": 1552084407,
"note": null,
"projectId": 123456,
"lastUpdatedById": null,
"kpiTrackingData": null,
"tests": [
{
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "New Dummy Test V4 2",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
}
],
"shouldSendReportEmail": false,
"created": 1542289535,
"updated": 1552060217,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
},
{
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1552060161,
"name": "Parallel Controller Script V4",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-2345678"
}
],
"shouldSendReportEmail": false,
"created": 1545324446,
"updated": 1552060219,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "DummyParallelControllerGenerateParent.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
},
"fileErrors": []
}
],
"masters": []
}
}
For the all the supported attributes, see the The Multi Test Object.
List Multi Tests
List Multi Tests
curl 'https://a.blazemeter.com/api/v4/multi-tests?projectId=123456&workspaceId=123456' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /multi-tests
To return a list of created multi tests, a projectId
or a workspaceId
is required. The sample code returns a list for items with a projectId
of 123456
and a workspaceId
of 123456
. Use the actual ID values for the project or workspace to return the list of its multi tests.
You can return a list specifying either a projectId
, a workspaceId
, or both. The returned list contains each test's collectionId
(shows up as id
in the response) and configuration.
List Multi Test Parameters
Parameters
-
projectId
integerrequired
The
projectId
you are wanting to get the list of test suites from -
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of test suites from -
name
stringThe unique string for a test suite name to search for. For example, the string
My Test
will pull all results with this string in thename
of the multi test -
platform
stringThe platform of multi tests to search for. This will always be
performance
for multi tests
Also see: Pagination and Sorting
List Multi Tests Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 103,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 12345678,
"name": "My Multi Test",
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"created": 1552063283,
"updated": 1552084407,
"creatorClientId": "api",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 10,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
}
],
"overrideExecutions": [
{
"concurrency": 10,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 10
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0,
"locationsWeighted": null
}
]
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
]
}
],
"shouldSendReportEmail": true,
"projectId": 123456,
"filesToSplit": [],
"dataFiles": []
}
]
}
For the all the supported attributes, see the The Multi Test Object.
Multi Test Details
Multi Test Details
curl 'https://a.blazemeter.com/api/v4/multi-tests/12345678?populateTests=true' \
--user 'api_key_id:api_key_secret'
API Explorer: /multi-tests/{collectionId}
To return the details of a specific multi test, a collectionId
is required. The sample code returns the multi test details for a collectionId
of 12345678
. Use the actual ID value for the test suite to return the detail of that multi test.
Multi Test Details Parameters
Parameters
-
populateTests
booleanDenotes if the response will show the included test details within the multi test response
Multi Test Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "A Full Test Settings Example",
"description": "A Full Test Settings Example",
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"oldVersionId": null,
"lastRunTime": 1598556724,
"draftId": null,
"filesToSplit": [
"colors.csv"
],
"dataFiles": [
"colors.csv"
],
"creatorClientId": "gui",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 1234567,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"serversCount": null,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
}
},
null
],
"enableLoadConfiguration": true
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"iterations": 50,
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 2345678,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"serversCount": null,
"iterations": 50,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
}
},
null
],
"enableLoadConfiguration": true
}
],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"v4MigratedDate": null,
"underMigration": null,
"shouldSendReportEmail": true,
"created": 1598555545,
"updated": 1598556724,
"note": null,
"projectId": 123456,
"lastUpdatedById": 123456,
"kpiTrackingData": null,
"tests": [
{
"id": 1234567,
"isNewTest": true,
"lastRunTime": 1598556724,
"name": "Full Test Example",
"description": "A Full Test Settings Example",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"rampUp": "1m",
"steps": 0,
"throughput": 10
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"hasThreadGroupsToOverride": false,
"shouldSendReportEmail": false,
"dependencies": {
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
},
"created": 1598555261,
"updated": 1598555574,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": true,
"javaVersion": "11",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableHostsOverride": true,
"enableFailureCriteria": true,
"enableNetworkEmulation": true,
"enableMockServices": true,
"enableTestData": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [
{
"key": "newProperty",
"value": "aValue"
}
],
"hosts": [
{
"hostname": "my.hostname.com",
"ip": "10.24.25.100"
}
],
"newrelic": [
"5acc544d61a347b23d7b23c9"
],
"jmeter": {
"version": "5.3",
"consoleArgs": "",
"enginesArgs": ""
},
"network": {
"preset": "Custom",
"latency": 30,
"bandwidth": 300000,
"packetloss": 5
},
"thresholds": {
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"userExperience": {
"enabled": true,
"pages": [
{
"label": "Homepage",
"url": "https://blazedemo.com"
}
]
}
}
},
"fileErrors": []
},
{
"id": 2345678,
"isNewTest": true,
"lastRunTime": 1598556724,
"name": "Full Test Example 2",
"description": "A Full Test Settings Example 2",
"userId": 123456,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"rampUp": "1m",
"steps": 0,
"throughput": 10
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"hasThreadGroupsToOverride": false,
"shouldSendReportEmail": false,
"dependencies": {
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
},
"created": 1598555529,
"updated": 1598555586,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": true,
"javaVersion": "11",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableJMeterProperties": true,
"enableHostsOverride": true,
"enableFailureCriteria": true,
"enableNetworkEmulation": true,
"enableMockServices": true,
"enableTestData": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"remoteControl": [
{
"key": "newProperty",
"value": "aValue"
}
],
"hosts": [
{
"hostname": "my.hostname.com",
"ip": "10.24.25.100"
}
],
"newrelic": [
"5acc544d61a347b23d7b23c9"
],
"jmeter": {
"version": "5.3",
"consoleArgs": "",
"enginesArgs": ""
},
"network": {
"preset": "Custom",
"latency": 30,
"bandwidth": 300000,
"packetloss": 5
},
"thresholds": {
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true
},
"userExperience": {
"enabled": true,
"pages": [
{
"label": "Homepage",
"url": "https://blazedemo.com"
}
]
}
}
},
"fileErrors": []
}
],
"masters": [
{
"id": 12345678,
"name": "A Full Test Settings Example",
"userId": 123456,
"ended": 1598558395,
"lastUpdate": 1598556876,
"delayedStartReady": true,
"runnerUserId": 123456,
"charges": [],
"terminateWorkersExecuted": false,
"maxUsers": 40,
"hasData": true,
"passed": true,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isPrivateData": false,
"isQueued": false,
"creatorClientId": "gui",
"executorClientId": "gui",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"locations": [
"us-east1-b",
"us-west1-a",
"us-east4-a"
],
"scenariosMapping": [
{
"id": "62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"name": "default-scenario-1234567",
"test": "Full Test Example",
"isEndUserExperience": false
},
{
"id": "a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"name": "End User Experience for Full Test Example",
"test": "Full Test Example",
"isEndUserExperience": true
},
{
"id": "ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"name": "default-scenario-2345678",
"test": "Full Test Example 2",
"isEndUserExperience": false
},
{
"id": "95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e",
"name": "End User Experience for Full Test Example 2",
"test": "Full Test Example 2",
"isEndUserExperience": true
}
],
"isDebugRun": false,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east1-b": 10,
"us-west1-a": 10
},
"locationsPercents": {
"us-east1-b": 50,
"us-west1-a": 50
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"testId": 1234567,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
},
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"iterations": 50,
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"testId": 2345678,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"concurrency": 42,
"useV4Pipeline": true,
"v4IndexerCollection": "{\"execution\":[1,2],\"execution:1\":[\"r-v4-5f480a1759499\",\"r-v4-5f480a175a25c\",\"r-v4-5f480a255b18d\"],\"session:1\":[\"r-v4-5f480a1759499\",\"r-v4-5f480a175a25c\",\"r-v4-5f480a255b18d\"],\"location:1\":[\"us-east1-b\",\"us-west1-a\",\"us-east4-a\"],\"execution:2\":[\"r-eux-5f480a175ace7\",\"r-eux-5f480a255ba84\"],\"session:2\":[\"r-eux-5f480a175ace7\",\"r-eux-5f480a255ba84\"],\"location:2\":[\"us-east4-a\"]}",
"isSelenium": false,
"rpsCompatible": false,
"remoteControlCompatible": true,
"hasMonitoringData": true,
"shouldSendReportEmail": true,
"shouldUseDaggerReport": true,
"hasDaggerData": true,
"kinesisStream": "prod-purp_v4pipeline_input",
"useJetlag": false,
"properties": [
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 1234567,
"locations": [
"us-east1-b",
"us-west1-a"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
},
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 2345678,
"locations": [
"us-east4-a"
],
"scenarios": [
"ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 20
}
],
"locations": [
"us-east1-b",
"us-west1-a",
"us-east4-a"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"ccf4726ffc4ed472310bd33d23aa67eb5b2a229a45b63f3585707b7e4743109f",
"95a83bdbe3edbbaf478724510ea81e5f9704125c9cad5754e7d3779dad1cb44e"
]
}
],
"jetpackLabels": [
{
"id": "a33c1d47453499bb293a918912c7221b0207092445be4752cdd779ccb0b729a2",
"name": "Dummy Sampler 19-5"
},
{
"id": "38dcdb01dd33fcb6a174bc246d558ebe55c1e4f89b73af1c8101ff958d6d28f3",
"name": "Dummy Sampler 16-3"
},
{
"id": "482d2e3c84148a2a549ce24722c15ca49b9fbe0a7b8ecfe9b9600f21f47f2f26",
"name": "Dummy Sampler 5-4"
},
{
"id": "ddb1b74c3f9f21baac105072fbd95e879a946f47e23e40d7c00565a99acacd7d",
"name": "Dummy Sampler 8-5"
},
{
"id": "8d2c3b33df4519ef590751a725db1ab4f2d8af63f0230ecb8dfa04395b49142c",
"name": "Dummy Sampler 1-3"
},
{
"id": "92e28a957dd25ee6126ecfc56053a3b417867e254777bacf91ddf35b016fd8d7",
"name": "Dummy Sampler 18-3"
},
{
"id": "598fe62bc04988ae02ee66948b62ce5cb51aea16cfcd790e398f3b176b125543",
"name": "Dummy Sampler 8-3"
},
{
"id": "6db63263206a77caf33733fa38cca9daa3af616ee02fa331cdf4ef08ff07c20c",
"name": "Dummy Sampler 10-1"
},
{
"id": "05370c567029cd96cdd248188806f0f9ea114277ed0ec1fab4b616964dfbba7f",
"name": "Dummy Sampler 10-3"
},
{
"id": "778b52e53a9424f23a05b4702455800f338e8990d5cfdf01606ea25eb1d6dcfc",
"name": "Dummy Sampler 9-2"
},
{
"id": "9ac8a6ff734a9691570e63eb3cb383c3b8b2b78560756c5048e22f995fe9cd98",
"name": "Dummy Sampler 16-1"
},
{
"id": "91132961357b44bcca8cd41ab98e51ea52bb79635a6fbd2ed846793db5327960",
"name": "Dummy Sampler 8-2"
},
{
"id": "ad82592ee55bdfd3b498f9882fbcdcb06768b300e4601c7697d92ac546660181",
"name": "Dummy Sampler 18-5"
},
{
"id": "47687360da0c21b9b8c24a330319e5106eb2212f5ef4d93a4f566cb15284cf81",
"name": "Dummy Sampler 7-5"
},
{
"id": "cbd50211d966c8460e31be9a0622aa1ef614c10626c86013edee4b8ffe995d63",
"name": "Dummy Sampler 3-2"
},
{
"id": "63424082d2caf18377d1d0511fe9b11bf6362eea1802c95f08352edc3c8a7a9f",
"name": "Dummy Sampler 20-3"
},
{
"id": "90a45f6678302659a4ba252cf7169c76663c4a08bd73331b00a6ecd630e8ec03",
"name": "Dummy Sampler 8-1"
},
{
"id": "04493fa0833a77105483f32fe2a32e1baca420ea9d6cda52e876010f91b2e087",
"name": "Dummy Sampler 6-3"
},
{
"id": "a33853e884ae4a2f332974875b8f8f0a4521c8c28112e9910b52680582f72dbb",
"name": "Dummy Sampler 7-1"
},
{
"id": "c646927269709fd3d09c9119fcc5b759e9e02ee703d22b8380ef4ed9bdbd1496",
"name": "Dummy Sampler 5-1"
},
{
"id": "9e68beca618ecf994e32d275abae1fd5ab889291befe15ae040e632f30d72f84",
"name": "Dummy Sampler 16-5"
},
{
"id": "e6ea544605da60c4de5d5d1c3a47a28c532c6c1e4f58c5747def5224b31eb3e9",
"name": "Dummy Sampler 6-1"
},
{
"id": "ecaf89656817ae7dd9c8cc7c9124dfe2af0e7ee8b6c72c62731ca597245e6df5",
"name": "Dummy Sampler 3-4"
},
{
"id": "34477ff95bb9c9db10f9f61c081e8ac8c07b0d8f7334396d7afee98526de1f90",
"name": "Dummy Sampler 13-2"
},
{
"id": "abcf80cf607ea2dee316b200578d7f111654011b417c6c2aee7bb7940659ea6b",
"name": "Dummy Sampler 11-2"
},
{
"id": "868ec8f6c10315c31b1c48a07ce3087f7af4c33cbbca2af9f1137e99a87528ad",
"name": "Dummy Sampler 10-4"
},
{
"id": "6ee11a45e8d1a5ff876fbdc353222498de95de841cb4ac54e977507fe117ba37",
"name": "Dummy Sampler 1-5"
},
{
"id": "ede4ebab4eca182748b1e2a67dd8ab9a3bf7fb6779fd30fa368be69cee505ed0",
"name": "Dummy Sampler 11-5"
},
{
"id": "e1b1583297ba88ea9692c62e653f9e05a117c296d425d28921b0ea0ade936118",
"name": "Dummy Sampler 2-3"
},
{
"id": "48fb09b24a0ba3106d2a69267c586cd72b46a6690601cfe981e11dfb364be295",
"name": "Dummy Sampler 2-4"
},
{
"id": "83f4936378767c2e7ed7c016c15c4f6ddc8fc79bf582319c0e5e9202b56cd5d9",
"name": "Dummy Sampler 15-2"
},
{
"id": "621ef52f19f5ee20b3dc113ca98fd4e76b9baa235f330cc7b4f52089a7ecc6a9",
"name": "Dummy Sampler 14-5"
},
{
"id": "0d97e91dc6d283eb0e8d67fbc4ce57684999f223a4ae46e255d93f0be10058c1",
"name": "Dummy Sampler 15-4"
},
{
"id": "c07913d9d35b4071bbf32ceade632e424e173ba0eb616adf5749f613f5596c87",
"name": "Dummy Sampler 5-3"
},
{
"id": "855c41608c960154b1a940db88eb07a6e2ebd670ae17bcf1c9949089645569b1",
"name": "Dummy Sampler 7-3"
},
{
"id": "5322c068c11819ca569e53f83db83ee0c7de04f131f5163d67071cb1697cce49",
"name": "Dummy Sampler 9-1"
},
{
"id": "0656cd0ee5501a550338a725de214239f39aaa90b30cf9d0231f71a01c8f6a2e",
"name": "Dummy Sampler 1-2"
},
{
"id": "503a51d46af9a41c84f14c6c0d58bf93c5f28da66fd71356fa6ccd8cdf062b2e",
"name": "Dummy Sampler 6-4"
},
{
"id": "c21cc688dc79cc813588c83720a676308b5713747f01bab1b9ded2729ae87a2e",
"name": "Dummy Sampler 9-3"
},
{
"id": "774a039661eb7bbf98665e4d3d28d897de8287e38c190400d8eae2a81dbead99",
"name": "Dummy Sampler 9-5"
},
{
"id": "76b730928743456b46da5cc919aab783cc9780ee49267ab1ea37af9002c48002",
"name": "Dummy Sampler 3-1"
},
{
"id": "bef502394f3d70755b4bd61f527b2b21477d3cbd727b72943af5deb84c29cf25",
"name": "Dummy Sampler 11-1"
},
{
"id": "99ee3d9fd98eac61d70ba85d8171b972356efa76fe998b762727607bfa44774a",
"name": "Dummy Sampler 4-5"
},
{
"id": "b519917b55a2e594146ec7380f658dd1ec485bd0c772ae1dbe28d84aea8e68fb",
"name": "Dummy Sampler 16-4"
},
{
"id": "66c400f522edc78b20cc31742ef1ee72de8e9bd652f119da0a9e619bdcfd5f10",
"name": "Dummy Sampler 7-2"
},
{
"id": "da87cde32eb7caa848ef8da42f4c52b2dba0f055bca2be633d0c893b849c4f04",
"name": "Dummy Sampler 15-1"
},
{
"id": "0f8344b783b59a723f7b49f7ec569f4c0c4fd860bd3ef1cdf5d8ac8f8b1b5cb5",
"name": "Dummy Sampler 1-4"
},
{
"id": "25398874fb563a5732b4d20423e826511aa54359a465bdc1c63ea2f6c0ca98e7",
"name": "Dummy Sampler 11-4"
},
{
"id": "502fb1b78f92a6a9233d9b3c1d8f6d8735817fd8c9abd4f5793178fc287d47d0",
"name": "Dummy Sampler 14-1"
},
{
"id": "68a3bd366768242345da1609c8d2b826eef695feb2dcd7533e752830396f2438",
"name": "Dummy Sampler 15-5"
},
{
"id": "877e982d386229478e921a65cbbaa84fb1c14e58d5754216372ea07f79fffcce",
"name": "Dummy Sampler 4-1"
},
{
"id": "6a8331f28925eae87d618fa2a7d34044c8a4640e7f08850d0888737d9e79734d",
"name": "Dummy Sampler 5-5"
},
{
"id": "84a5f2ae39aaf71778af767f85d70e725c24816cd0a9f7f8bdb65945e6730250",
"name": "Dummy Sampler 14-2"
},
{
"id": "426b8776c5aea18236671c2031b79e03e36ae61e9525274ff37c4abd8cbf402a",
"name": "Dummy Sampler 4-3"
},
{
"id": "d26beb176d6172083f44e386db016ffe202064b9473b565dec7faed943579b99",
"name": "Dummy Sampler 4-4"
},
{
"id": "fa5901c964290213a727630018d745079de4d55b2951913a6fd29db41cf020b8",
"name": "Dummy Sampler 11-3"
},
{
"id": "5421f70a20a4cc21671898f969227cf0f7945d8bb64748fe24e97ad8ee12a4bd",
"name": "Dummy Sampler 3-3"
},
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL"
},
{
"id": "3c62fe114a84758fc274ef77eeda9ba81e0c0de495ff2786da892245ca25d8a4",
"name": "Dummy Sampler 7-4"
},
{
"id": "6be96150c1e953e08a3a1911d9db6ce1f36946840832ea4d3367c781fd2ac6c0",
"name": "Dummy Sampler 1-1"
},
{
"id": "c5f2e3537e2b7f2fa204abf63de8bc339036b7eee0f9fcb7168995cf3842a04d",
"name": "Dummy Sampler 2-5"
},
{
"id": "e934b78602eea603ed22388d47aa3090ec643c8dcd604a1ded0f21e8b97f84d3",
"name": "Dummy Sampler 5-2"
},
{
"id": "83acc6011cbf9ab77ebbc1926e0efb3d38891f39b5df0a92f730d9e7ebd54677",
"name": "Dummy Sampler 12-3"
},
{
"id": "8ad90e3eac6ba9a4919c58e925e99cedf15e897827778da751f5db68a56330bf",
"name": "Dummy Sampler 19-3"
},
{
"id": "0afba9498eb0587a5be28586c9fa0111de1bf3475dbe9618ec75e4f46814de56",
"name": "Dummy Sampler 2-1"
},
{
"id": "4e55dd94b0687148f4d3fb819da192caf00af1da9ab4e794922ecee2eb9bcca4",
"name": "Dummy Sampler 3-5"
},
{
"id": "07f8cd6ee5c77a7e8ed1430254f701d6fec3ef0aed713d34816734877b8bc086",
"name": "Dummy Sampler 4-2"
},
{
"id": "d0dd6e4b1eddc8042df773895be292546b71244763b6dbe5f456888d759a0636",
"name": "Dummy Sampler 10-2"
},
{
"id": "aca092e4f1a598ba2ce9fe4d9fbbaeb48be4eee63bff89fd222a38d2d4375871",
"name": "Dummy Sampler 12-1"
},
{
"id": "de5a49b6043c130e9fd482dfff6e039106c712db6471cf1f41f17b702ae1560b",
"name": "Dummy Sampler 6-2"
},
{
"id": "86922481745cf212fa85c1ee4b740df8546a853464a982eb3042dde4ce191fc4",
"name": "Dummy Sampler 14-3"
},
{
"id": "5a212f0d83b87585c312053aa3d9356faedcd7c83e2e862856bfab3bb352ddb3",
"name": "Dummy Sampler 9-4"
},
{
"id": "166a88b346c9a3c8c051c6b0cd33a3b3a889a75e66c9baf7307583705d335cd4",
"name": "Dummy Sampler 13-5"
},
{
"id": "687b26024f35d0e43abbe63c1ebf07ab893c27adec485a65868efd1745d35dac",
"name": "Dummy Sampler 12-2"
},
{
"id": "c013b818a253f344d1109bebece47c68eefb8a09e7614ad6665a53faf52bcc5b",
"name": "Dummy Sampler 8-4"
},
{
"id": "9917793e35334cc9e0ac8dddda32974caf006a34f1c0fc53915c07ec45165b42",
"name": "Dummy Sampler 12-4"
},
{
"id": "b8053a39eb9f4fc919b5d9ba0307a4f2c8a06609269bbc1bbb83c3ad39282978",
"name": "Dummy Sampler 13-4"
},
{
"id": "b9709d6c6edcba4fe3e44175285d35afd81a7d3a1eb3e3805ea3b48b6dcb789a",
"name": "Dummy Sampler 12-5"
},
{
"id": "ae6e735e39c6f1728918082eb5ff2cc38533fb2d99acb4cce25b591dd7c24aec",
"name": "Dummy Sampler 13-3"
},
{
"id": "2eeb16c4592db1dfb1968c839da1470319dc2e8115d762d88a0f3c3939af3db8",
"name": "Dummy Sampler 14-4"
},
{
"id": "4829ecac0001f3438346a69f721931d4dc9dc0fe4422bb6d89cc645c9020496d",
"name": "Dummy Sampler 15-3"
},
{
"id": "c5537625bcad55ff83d5d77458e4ebed42d6af21c6838cebf978cc417b921cc2",
"name": "Dummy Sampler 17-1"
},
{
"id": "2c4c77b439900407b286f4eb33b7160d476a16af900ca18a654ad7e061e47217",
"name": "Dummy Sampler 10-5"
},
{
"id": "470dd9efd4931dfb53a09dc548a601a71d3440016927b2122649463e5549da52",
"name": "Dummy Sampler 20-5"
},
{
"id": "73aa5e01278dab139d90c1e9aa23c990382944709cceac06d10cd65a4b831d7f",
"name": "Dummy Sampler 6-5"
},
{
"id": "140a676f713f0eb2bf0fae3b90a60962710215f0bb019a8b66ad7647877ea552",
"name": "Dummy Sampler 18-1"
},
{
"id": "1567863ec25cafbcb2096f6df70fd9a09795f54e3320d567cbfb15745c3f75b0",
"name": "Dummy Sampler 17-2"
},
{
"id": "3077351f2d30ec1d9ae04ffe650bd48c170f285b605f6361d35fe062a3ee49b3",
"name": "Dummy Sampler 17-3"
},
{
"id": "6c27df800121d70a8bd7b1e5d44e6b6df537c7701cc3a1e6fe4360f24e313814",
"name": "Dummy Sampler 20-4"
},
{
"id": "214d463309bc94e927761a111c2fb2f8a71d68d385a04de41953d654c78fe730",
"name": "Dummy Sampler 16-2"
},
{
"id": "ce873b3e1ee8b6cb68b054d5183a477074921c18e8b76b32ed7b131a666160b1",
"name": "Dummy Sampler 18-2"
},
{
"id": "585ee62293662d8e2c161c2621efe4e4b7d8e7cd8de5d19699ee943fb7e0d4f9",
"name": "Dummy Sampler 2-2"
},
{
"id": "dee07183c003946de4025ba7254aae42ba735fd3c0c5c16ed25e3f7781afaf42",
"name": "Dummy Sampler 17-4"
},
{
"id": "5a89b5ddc9ad089d0710d21a353cef4aceae32986d878b9fba63caa078413c7d",
"name": "Dummy Sampler 18-4"
},
{
"id": "462afc6b4bd64d9c36b76647a73f0d6804d2040bf0144eb120eb0a62271161aa",
"name": "Dummy Sampler 13-1"
},
{
"id": "a84e1865e6521543fe19aebb2a17880758c3eedd3862d77406ced6ba32173471",
"name": "Dummy Sampler 17-5"
},
{
"id": "604f26d4fd943ca3f9151b787861fb38418981ebde5c1d895eccc0c27dee1bc8",
"name": "Dummy Sampler 20-1"
},
{
"id": "f2259feb82136c0a9e7741a26064a9dc481b4eba05aec62255a7e6730c3ef58a",
"name": "Dummy Sampler 20-2"
},
{
"id": "6cd919cc493c050f18cf5a51b011072cdb16aa89128ce77082698447ceebf736",
"name": "Dummy Sampler 19-1"
},
{
"id": "37bb60ebb0d33cff3b0781173dd81565132d5f8765ddda7c28300665f78aff77",
"name": "Dummy Sampler 19-2"
},
{
"id": "a2d3f40bbbd4ca65daa242eaeca2473f35dcc1b594f2c047fb8941df1131a3be",
"name": "Dummy Sampler 19-4"
}
],
"dependencies": [
{
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
}
],
"env": "https://a.blazemeter.com",
"enableFailureCriteria": {
"1234567": true,
"2345678": true
},
"enableLoadConfiguration": true,
"created": 1598556695,
"updated": 1598558701,
"thresholds": [
{
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true,
"testId": 1234567
},
{
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1500",
"isEmpty": false
},
{
"field": "responseTime.max",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": true,
"value": "3000",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true,
"testId": 2345678
}
]
}
]
},
"request_id": "5f4819c52ed93"
}
For the all the supported attributes, see the The Multi Test Object.
Duplicate a Multi Test
Duplicate a Multi Test
curl 'https://a.blazemeter.com/api/v4/multi-tests/12345678/duplicate' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /multi-tests/{collectionId}/duplicate
To duplicate a test suite, a collectionId
is required. The sample code duplicates the test suite with the collectionId
of 12345678
. Use the actual ID value for the test suite to return the detail of that test suite.
Duplicate a Multi Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 23456789,
"name": "A Full Test Settings Example - Copy",
"description": "A Full Test Settings Example",
"collectionType": "multiV4",
"userId": 123456,
"items": [],
"lastRunTime": 1598556724,
"filesToSplit": [
"colors.csv"
],
"dataFiles": [
"colors.csv"
],
"creatorClientId": "gui",
"testsForExecutions": [
{
"testId": 1234567,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 1234567,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"overrideExecutions": null,
"enableLoadConfiguration": true
},
{
"testId": 2345678,
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"iterations": 50,
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
},
{
"concurrency": 1,
"holdFor": "1200s",
"executor": "selenium",
"testId": 2345678,
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example 2"
}
],
"overrideExecutions": [
{
"concurrency": 20,
"serversCount": null,
"iterations": 50,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 20
},
"locationsPercents": {
"us-east4-a": 100
}
},
null
],
"enableLoadConfiguration": true
}
],
"shouldSendReportEmail": true,
"created": 1599161013,
"updated": 1599161013,
"projectId": 123456,
"lastUpdatedById": 123456
},
"request_id": "5f5142b5af38b"
}
For the full details of all the attributes for the test suite (multi-test), you can visit The Multi Test Object.
Delete a Multi Test
Delete a Multi Test
curl 'https://a.blazemeter.com/api/v4/multi-tests/12345678' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /multi-tests/{collectionId}
To delete a multi test, DELETE its ID (you need to know the collectionId
). The sample code deletes a test with an ID of 12345678
. Use the collectionId
of the actual test to delete in place of the 12345678
.
If you do not know the ID of the test to delete, use the List Multi Tests section to return a list of your created tests.
Response codes associated with deleting a test include 204
(if the test was successfully deleted) and 404
(if the collectionId
does not exist).
Tags
You can categorize Performance Tests by applying tags (labels) of your choice. These tags are available in searches and filters. You can add tags to tests and reports to easily index data for search and to aggregate data based on the tags. Use tags to tie tests to a specific release, application, API, and so on, or to identify the same test in different projects.
Tags are shared across tests in one workspace, and they are workspace-specific. Only workspace managers can rename and delete tags. If a tag is deleted, it is removed from all tests and reports. Tag names are not case-sensitive and must be unique. By default, reports will inherit the tags of the related test.
New tags are created if they are used in requests and do not exist yet. If the name is not unique, you'll get a 400 response instead.
Create a Tag
You can use tags when you search and filter Performance tests. The creation response contains a tag identifier that you should note down. You will need the tagID when you want to configure, deploy, or delete this tag later. New tags are also created if they are used in requests and do not exist yet, otherwise it returns 400.
The sample code creates a tag named "workdays" in workspaceId 123456 and the tag is created with a tagId of 888. Use the actual ID value for your workspace.
Create a Tag Minimum Configuration Sample
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/tags' \
-X 'POST' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{ "label" : "workdays" }
The following parameters are the base parameters required to create a tag.
Create a Tag Request Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 888,
"label": "workdays",
"createdDate": 1658942673,
"createdBy": "someone@example.com",
"workspace": 123456
},
"request_id": "62e174d163ec9"
}
Attributes
-
label
stringThe name of the tag that can be used in searches and filters
Get All Tags
This call returns a list of all tags defined in workspace. and their tagIDs. You use tags when you search and filter Performance tests.
To return the list of tags available in a workspace, you need to provide a workspaceId
.
The sample code uses a workspaceId of 123456
. Use the actual ID value of your workspace.
Minimum Parameters for getting all tags
Get All Tags Minimum Configuration Sample
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/tags' \
-X GET \
-H 'accept: */*'
The following parameters are the base parameters required to get all tags.
Get All Tags Request Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 3,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"label": "workdays",
"workspace": 123456,
"uses": 7,
"id": 158037,
"createdDate": 1652115221,
"createdBy": "someone@example.com"
},
{
"label": "holidays",
"workspace": 123456,
"uses": 3,
"id": 149381,
"createdDate": 1651059628,
"createdBy": "someone@example.com"
},
{
"label": "weekends",
"workspace": 123456,
"uses": 0,
"id": 110312,
"createdDate": 1646214177,
"createdBy": "someone@example.com"
}
],
"request_id": "62e17949e3f5e"
}
Attributes
Update Tags
To update which tags are assigned to a test, you need to know the testId
(in this example, 1234567
),
the tagId
of the tag that you want to add (in this example 888
),
and the current tagIDs of the test, in this example 1234
.
Use the actual ID value of your tag and test: Use the Get All Tags API to see the list of tagIDs to identify the ID of the tag you want to add. Next, use the List Tests API to find your testId. Finally, use Test Details API to see the current tag list of the test, and add the new ID to the list. Provide the full array of desired tags, not just the ones that you want to add.
Minimum Parameters for Updating Tags
Update Tags Minimum Configuration Sample
curl 'https://a.blazemeter.com/api/v4/tests/1234567' \
-X PATCH \
-H 'accept: */*' \
-H 'Content-Type: application/json' \
-d '{"tags":[1234, 888]}'
The following parameters are the base parameters required to update a tag.
Update a Tag Request Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": 1234567,
"isNewTest": true,
"name": "July_13_12:55 PM",
"userId": 352756,
"creatorClientId": "gui",
"overrideExecutions": [ ],
"executions": [ ],
"hasThreadGroupsToOverride": false,
"hasNonRegularThreadGroup": false,
"shouldSendReportEmail": true,
"dependencies": [],
"tags": [
{
"id": 1234,
"label": "demo"
},
{
"id": 888,
"label": "Dummy"
}
],
"shouldRemoveJmeter": true,
"created": 1657731344,
"updated": 1658944762,
"projectId": 494347,
"lastUpdatedById": 1609533,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": false,
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableFailureCriteria": false,
"enableMockServices": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "dummy_errors.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"fromTaurus": false,
"slidingWindow": false
}
}
},
"subscribers": [
352756
]
},
"request_id": "62e17cfa53674",
"test": {
"id": 11268687,
"isNewTest": true,
"name": "July_13_12:55 PM",
"userId": 352756,
"creatorClientId": "gui",
"overrideExecutions": [ ],
"executions": [ ],
"hasThreadGroupsToOverride": false,
"hasNonRegularThreadGroup": false,
"shouldSendReportEmail": true,
"dependencies": [],
"tags": [
{
"id": 1234,
"label": "demo"
},
{
"id": 888,
"label": "Dummy"
}
],
"shouldRemoveJmeter": true,
"created": 1657731344,
"updated": 1658944762,
"projectId": 494347,
"lastUpdatedById": 1609533,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": false,
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"enableFailureCriteria": false,
"enableMockServices": false,
"enableLoadConfiguration": true,
"scriptType": "jmeter",
"threads": 500,
"filename": "dummy_errors.jmx",
"testMode": "script",
"extraSlots": 0,
"plugins": {
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"fromTaurus": false,
"slidingWindow": false
}
}
},
"subscribers": [
352756
]
}
}
Attributes
-
description
stringrequired
The description of the tag
-
id
integerrequired
The identifier of the tag
-
name
stringThe name of the tag
Delete Tag
To delete a tag, you need to know the tag identifier. The sample code uses a tagId
of 888
and a workspaceId of 123456
. Use the actual ID value of your tag and workspace.
Minimum Parameters for Deleting a Tag
Delete a Tag Minimum Configuration Sample
curl 'https://a.blazemeter.com/api/v4/workspaces/123456/tags/888' \
-X DELETE \
-H 'accept: */*'
The following parameters are the base parameters required to delete a tag.
Delete a Tag Request Attributes
Response 200 OK
{
}
Attributes
-
tagId
integerrequired
The tag identifier
Test Runs
When you start a test, a master
(or test report) will be created using a unique masterId
for that test run. The masters
endpoints provide control, status, and results for all test runs.
A single master
will reference the results for a single test or multi test.
The Master Object
The Master Object
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "Full Test Example",
"userId": 123456,
"publicToken": "i4QiExnJ7Sz6RXsmeJWmKGoq4mZEepU9k5ZPSDwnLlQVn8PF19",
"ended": 1599076624,
"lastUpdate": 1599075313,
"delayedStartReady": true,
"runnerUserId": 123456,
"charges": [],
"maxUsers": 20,
"created": 1599075175,
"updated": 1599077683,
"reportStatus": "pass",
"note": "This is a note",
"passed": true,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isPrivateData": false,
"creatorClientId": "gui",
"executorClientId": "gui",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"isDebugRun": false,
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenariosMapping": [
{
"id": "62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"name": "default-scenario-1234567",
"test": "Full Test Example",
"isEndUserExperience": false
},
{
"id": "a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"name": "End User Experience for Full Test Example",
"test": "Full Test Example",
"isEndUserExperience": true
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"useV4Pipeline": true,
"isSelenium": false,
"hasMonitoringData": true,
"rpsCompatible": false,
"remoteControlCompatible": true,
"hasDaggerData": true,
"hasData": true,
"shouldUseDaggerReport": true,
"properties": [
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 1234567,
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 10
}
],
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
}
],
"dependencies": [
{
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
}
],
"testId": 1234567,
"projectId": 123456,
"sessionsId": [
"r-v4-5f4ff36807701",
"r-v4-5f4ff36808873",
"r-eux-5f4ff36809597"
],
"thumbnailUrl": null,
"hasErrorsPerInterval": true,
"sessions": [
"r-v4-5f4ff36807701",
"r-v4-5f4ff36808873",
"r-eux-5f4ff36809597"
],
"jetpackLabels": [
{
"id": "5a212f0d83b87585c312053aa3d9356faedcd7c83e2e862856bfab3bb352ddb3",
"name": "Dummy Sampler 9-4"
},
{
"id": "2c4c77b439900407b286f4eb33b7160d476a16af900ca18a654ad7e061e47217",
"name": "Dummy Sampler 10-5"
},
{
"id": "99ee3d9fd98eac61d70ba85d8171b972356efa76fe998b762727607bfa44774a",
"name": "Dummy Sampler 4-5"
},
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL"
},
{
"id": "426b8776c5aea18236671c2031b79e03e36ae61e9525274ff37c4abd8cbf402a",
"name": "Dummy Sampler 4-3"
},
{
"id": "de5a49b6043c130e9fd482dfff6e039106c712db6471cf1f41f17b702ae1560b",
"name": "Dummy Sampler 6-2"
},
{
"id": "868ec8f6c10315c31b1c48a07ce3087f7af4c33cbbca2af9f1137e99a87528ad",
"name": "Dummy Sampler 10-4"
},
{
"id": "ecaf89656817ae7dd9c8cc7c9124dfe2af0e7ee8b6c72c62731ca597245e6df5",
"name": "Dummy Sampler 3-4"
},
{
"id": "d26beb176d6172083f44e386db016ffe202064b9473b565dec7faed943579b99",
"name": "Dummy Sampler 4-4"
},
{
"id": "5421f70a20a4cc21671898f969227cf0f7945d8bb64748fe24e97ad8ee12a4bd",
"name": "Dummy Sampler 3-3"
},
{
"id": "0f8344b783b59a723f7b49f7ec569f4c0c4fd860bd3ef1cdf5d8ac8f8b1b5cb5",
"name": "Dummy Sampler 1-4"
},
{
"id": "66c400f522edc78b20cc31742ef1ee72de8e9bd652f119da0a9e619bdcfd5f10",
"name": "Dummy Sampler 7-2"
},
{
"id": "4e55dd94b0687148f4d3fb819da192caf00af1da9ab4e794922ecee2eb9bcca4",
"name": "Dummy Sampler 3-5"
},
{
"id": "6a8331f28925eae87d618fa2a7d34044c8a4640e7f08850d0888737d9e79734d",
"name": "Dummy Sampler 5-5"
},
{
"id": "877e982d386229478e921a65cbbaa84fb1c14e58d5754216372ea07f79fffcce",
"name": "Dummy Sampler 4-1"
},
{
"id": "c5f2e3537e2b7f2fa204abf63de8bc339036b7eee0f9fcb7168995cf3842a04d",
"name": "Dummy Sampler 2-5"
},
{
"id": "e934b78602eea603ed22388d47aa3090ec643c8dcd604a1ded0f21e8b97f84d3",
"name": "Dummy Sampler 5-2"
},
{
"id": "3c62fe114a84758fc274ef77eeda9ba81e0c0de495ff2786da892245ca25d8a4",
"name": "Dummy Sampler 7-4"
},
{
"id": "76b730928743456b46da5cc919aab783cc9780ee49267ab1ea37af9002c48002",
"name": "Dummy Sampler 3-1"
},
{
"id": "774a039661eb7bbf98665e4d3d28d897de8287e38c190400d8eae2a81dbead99",
"name": "Dummy Sampler 9-5"
},
{
"id": "c21cc688dc79cc813588c83720a676308b5713747f01bab1b9ded2729ae87a2e",
"name": "Dummy Sampler 9-3"
},
{
"id": "0656cd0ee5501a550338a725de214239f39aaa90b30cf9d0231f71a01c8f6a2e",
"name": "Dummy Sampler 1-2"
},
{
"id": "585ee62293662d8e2c161c2621efe4e4b7d8e7cd8de5d19699ee943fb7e0d4f9",
"name": "Dummy Sampler 2-2"
},
{
"id": "48fb09b24a0ba3106d2a69267c586cd72b46a6690601cfe981e11dfb364be295",
"name": "Dummy Sampler 2-4"
},
{
"id": "855c41608c960154b1a940db88eb07a6e2ebd670ae17bcf1c9949089645569b1",
"name": "Dummy Sampler 7-3"
},
{
"id": "6ee11a45e8d1a5ff876fbdc353222498de95de841cb4ac54e977507fe117ba37",
"name": "Dummy Sampler 1-5"
},
{
"id": "e1b1583297ba88ea9692c62e653f9e05a117c296d425d28921b0ea0ade936118",
"name": "Dummy Sampler 2-3"
},
{
"id": "c646927269709fd3d09c9119fcc5b759e9e02ee703d22b8380ef4ed9bdbd1496",
"name": "Dummy Sampler 5-1"
},
{
"id": "e6ea544605da60c4de5d5d1c3a47a28c532c6c1e4f58c5747def5224b31eb3e9",
"name": "Dummy Sampler 6-1"
},
{
"id": "0afba9498eb0587a5be28586c9fa0111de1bf3475dbe9618ec75e4f46814de56",
"name": "Dummy Sampler 2-1"
},
{
"id": "c07913d9d35b4071bbf32ceade632e424e173ba0eb616adf5749f613f5596c87",
"name": "Dummy Sampler 5-3"
},
{
"id": "04493fa0833a77105483f32fe2a32e1baca420ea9d6cda52e876010f91b2e087",
"name": "Dummy Sampler 6-3"
},
{
"id": "90a45f6678302659a4ba252cf7169c76663c4a08bd73331b00a6ecd630e8ec03",
"name": "Dummy Sampler 8-1"
},
{
"id": "a33853e884ae4a2f332974875b8f8f0a4521c8c28112e9910b52680582f72dbb",
"name": "Dummy Sampler 7-1"
},
{
"id": "cbd50211d966c8460e31be9a0622aa1ef614c10626c86013edee4b8ffe995d63",
"name": "Dummy Sampler 3-2"
},
{
"id": "6be96150c1e953e08a3a1911d9db6ce1f36946840832ea4d3367c781fd2ac6c0",
"name": "Dummy Sampler 1-1"
},
{
"id": "503a51d46af9a41c84f14c6c0d58bf93c5f28da66fd71356fa6ccd8cdf062b2e",
"name": "Dummy Sampler 6-4"
},
{
"id": "482d2e3c84148a2a549ce24722c15ca49b9fbe0a7b8ecfe9b9600f21f47f2f26",
"name": "Dummy Sampler 5-4"
},
{
"id": "07f8cd6ee5c77a7e8ed1430254f701d6fec3ef0aed713d34816734877b8bc086",
"name": "Dummy Sampler 4-2"
},
{
"id": "d0dd6e4b1eddc8042df773895be292546b71244763b6dbe5f456888d759a0636",
"name": "Dummy Sampler 10-2"
},
{
"id": "73aa5e01278dab139d90c1e9aa23c990382944709cceac06d10cd65a4b831d7f",
"name": "Dummy Sampler 6-5"
},
{
"id": "91132961357b44bcca8cd41ab98e51ea52bb79635a6fbd2ed846793db5327960",
"name": "Dummy Sampler 8-2"
},
{
"id": "598fe62bc04988ae02ee66948b62ce5cb51aea16cfcd790e398f3b176b125543",
"name": "Dummy Sampler 8-3"
},
{
"id": "47687360da0c21b9b8c24a330319e5106eb2212f5ef4d93a4f566cb15284cf81",
"name": "Dummy Sampler 7-5"
},
{
"id": "05370c567029cd96cdd248188806f0f9ea114277ed0ec1fab4b616964dfbba7f",
"name": "Dummy Sampler 10-3"
},
{
"id": "c013b818a253f344d1109bebece47c68eefb8a09e7614ad6665a53faf52bcc5b",
"name": "Dummy Sampler 8-4"
},
{
"id": "6db63263206a77caf33733fa38cca9daa3af616ee02fa331cdf4ef08ff07c20c",
"name": "Dummy Sampler 10-1"
},
{
"id": "8d2c3b33df4519ef590751a725db1ab4f2d8af63f0230ecb8dfa04395b49142c",
"name": "Dummy Sampler 1-3"
},
{
"id": "ddb1b74c3f9f21baac105072fbd95e879a946f47e23e40d7c00565a99acacd7d",
"name": "Dummy Sampler 8-5"
},
{
"id": "5322c068c11819ca569e53f83db83ee0c7de04f131f5163d67071cb1697cce49",
"name": "Dummy Sampler 9-1"
},
{
"id": "778b52e53a9424f23a05b4702455800f338e8990d5cfdf01606ea25eb1d6dcfc",
"name": "Dummy Sampler 9-2"
}
]
},
"request_id": "5f4ffd4318af4"
}
Attributes
-
id
integerread-only
The unique identifier of the master. This is known as the
masterId
and cannot be modified -
name
stringrequired
The test report name
-
userId
integerread-only
The unique identifier of the user
-
publicToken
stringThe public token that is added to the report link to share the report. Can be added with the Add a Public Token API
-
ended
integerread-only
End time of this
master
(or test report) -
lastUpdate
integerread-only
Time of last sample of this
master
(or test report) -
delayedStartReady
booleanread-only
Denotes whether the test run was delayed to sync with other engines
-
runnerUserId
integerread-only
The user ID of the user to run the test
-
maxUsers
integerread-only
Maximum concurrency reached
-
created
integerread-only
The time that the test was created
-
updated
integerread-only
The time that the test was last updated
-
reportStatus
stringread-only
Indicates the ending status of the report. Value can be
pass
,fail
,unset
,error
,abort
, ornoData
-
note
stringContains notes for the given master
-
passed
booleanread-only
Denotes whether the test run passed or failed its test criteria. See the Thresholds Statistics section for details
-
parallelTestsInWorkspace
integerread-only
Number of tests running in parallel in the workspace with this test
-
parallelTestsInAccount
integerread-only
Number of tests running in parallel in the account with this test
-
isPrivateData
booleanread-only
Denotes if the data was generated from Private Cloud instance
-
creatorClientId
stringread-only
The ID of the creator client of the test. For example,
api
, orgui
-
executorClientId
stringread-only
The ID of the creator client of the test run (master). For example,
api
, orgui
-
secondsPerLabelDoc
integerread-only
Denotes the KPI interval of the reports by default
-
isDebugRun
booleanread-only
Denotes if this was a Debug test run
-
locations
arrayread-only
The locations (by
location id
) where the test ran -
scenariosMapping
arrayread-only
The list of scenarios tied to this test run
-
id
stringThe
scenarioId
for this specific scenario -
name
stringThe name of this scenario
-
test
stringName of the test this scenario is tied to
-
isEndUserExperience
booleanDenotes if this scenario was an end user experience or not
-
-
executions
arrayThe list of excution details for this test run
-
concurrency
integerread-only
The number of concurrent virtual users simulated to run on this location. For example,
20
will set the test to run with 20 concurrent users. Minimum:1
. Same asconcurrency
in Taurus -
usersNotConfigured
booleanread-only
Denotes if the
concurrency
override has been set or not -
holdFor
stringread-only
The length of time the test will run at the peak concurrency (same as
hold-for
in Taurus) -
durationIsNotConfigured
booleanread-only
Denotes if the
hold-for
override has been set or not -
rampUp
stringread-only
The length of time the test will take to ramp-up to full concurrency (same as
ramp-up
in Taurus) -
steps
integerread-only
-
iterations
integerread-only
The number of iterations to run the test with. Will always be
1
for this test type. Same asiterations
in Taurus -
throughput
integerread-only
The maximum throughput allowed (same as
throughput
in Taurus) -
locations
objectThe lcoation details for this test run
-
location Id
integerread-only
Number of engines a test runs with in the given
location Ids
-
-
locationsPercents
objectThe location percentage details for this test run
-
location Id
integerread-only
Number of engines a test runs with in the given
location Ids
-
-
executor
stringread-only
The script type you are running. Includes the following:
gatling
grinder
jmeter
locust
pbench
selenium
siege
-
scenario
stringread-only
BlazeMeter scenario reference for GUI reports
-
executionSource
stringread-only
Tells BlazeMeter to run the selenium scenario for End User Experience under these settings
-
-
isSelenium
booleanread-only
Denotes if this test ran with Selenium
-
rpsCompatible
booleanread-only
Denotes if this test ran with the RPS control feature
-
remoteControlCompatible
booleanread-only
Denotes if this test ran with the Remote Control feature
-
hasData
booleanread-only
Denotes if this test returned data or not
-
properties
arrayThe list of JMeter properties used in this test run
-
pairs
arrayThe list of JMeter properties key-value pairs
-
key
stringread-only
The JMeter property name
-
value
stringread-only
The JMeter property value
-
-
testId
integerread-only
Denotes the
testId
tied to themaster
(or test report) -
locations
arrayread-only
Contains the
location ID
(s) the JMeter property was applied to -
scenarios
arrayread-only
Contains the
scenarioId
(s) the JMeter property was applied to
-
-
dependencies
arrayThe mock service details to be used with this test
-
services
arrayThe list of mock services to be used in this test
-
service
stringThe name of the mock service. Use the List Mock Services API to find the name
-
mock-service
stringThe name of the running mock service instance. Use the List Mock Services API to find the mock service
-
mock-service-template
stringThe name of the mock service template. Use the List Mock Service Templates API to find the template
-
-
-
testId
integerread-only
Denotes if the
testId
tied to themaster
(or test report) -
testCollectionId
integerread-only
Denotes if the
collectionId
tied to themaster
(or test report) -
projectId
integerread-only
Denotes if the
projectId
themaster
(or test report) is located -
sessionsId
arrayread-only
Contains a list of all the
sessionId
s assigned to themaster
(or test report)Note: When running GET
sessions/{sessionId}
, you can addwithMessages=true
parameter to retrieve the messages received on the specific session. -
hasErrorsPerInterval
booleanDenotes if the test run has errors
-
sessions
arrayread-only
Contains a list of all the
sessionId
s assigned to themaster
(or test report) -
jetpackLabels
arrayThe jetpack (V4) label information
-
id
stringread-only
Contains the
labelId
of this session (MainlabelId
) -
name
stringread-only
Contains the name of the label attached to the
labelId
-
-
messages
stringIncludes error messages related to the report.
Note: This attribute only appears when running the API with
withMessages=true
parameter.Example response:
"messages": [{"_id": 9,"code": "ERROR_MASTER_DEPENDENCY_TIMEOUT","level": "ERROR","message": "Timeout occurred while trying to retrieve Mock Configuration / Test Data. Please try again later.","priority": 4,"logs": false}],
-
aggregatedMessages
stringIncludes error messages related to the sessions running for this report, with the corresponding
sessionId
s.Note: This attribute only appears when running the API with
withMessages=true
parameter.Example response:
"aggregatedMessages": [ { "sessions": [ "r-v4-62d67e2e860b9398863839" ], "code": "ERROR_SESSION_GENERAL_TAURUS", "level": "ERROR", "message": "An error occurred during execution. Most likely the error was in the test configuration. Please check the bzt.log in the Logs tab to find the issue and fix it before running the test again.", "priority": 1, "logs": true } ]
Start a Test
Start a Test
curl 'https://a.blazemeter.com/api/v4/tests/1234567/start?delayedStart=false' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests/{testId}/start
To start a preconfigured load test, you need to know the testId
of a created and configured test. The sample code executes a test with a testId
of 1234567
. Use the testId
of the actual test to start in place of the 1234567
.
If you do not know the ID of the test to start, use List Tests to return a list of your created tests.
Start a Tests Parameters
Parameters
-
delayedStart
booleanDenotes if the test run will wait to start for a set amount of time after all engines are ready
Start a Test Request Attributes
Start a Test Start a Test POST Body (JSON)
{
"isDebugRun": false
}
Attributes
-
isDebugRun
booleanDenotes if the test will run as a Debug test or not
Start a Test Response Attributes
Response 202 Accepted
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "V4 Remote Control Test",
"userId": 123456,
"publicToken": null,
"ended": null,
"lastUpdate": null,
"delayedStartReady": false,
"runnerUserId": 123456,
"charges": [],
"usage": null,
"maxUsers": null,
"type": null,
"passed": null,
"canControlRampup": null,
"targetThreads": null,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isSandbox": null,
"isPrivateData": false,
"executionMode": null,
"creatorClientId": "gui",
"executorClientId": "api",
"importedAt": null,
"secondsPerLabelDoc": 60,
"taurusRemoteControlProperties": null,
"labelsCollectionSuffix": "_17_12",
"locations": [
"us-east-1"
],
"scenariosMapping": [
{
"id": "7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7",
"name": "default-scenario-1234567",
"test": null,
"isEndUserExperience": false
}
],
"isDebugRun": false,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"throughput": 5,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
}
],
"concurrency": 20,
"useV4Pipeline": true,
"terminatedAt": null,
"shutdownAt": null,
"jupyterToken": null,
"jupyterHeartbeat": null,
"jupyterHost": null,
"jupyterPort": null,
"jupyterNotebook": null,
"v4IndexerCollection": "{\"execution\":[1],\"execution:1\":[\"r-v4-5c7d64f8c95cf\"],\"session:1\":[\"r-v4-5c7d64f8c95cf\"],\"location:1\":[\"us-east-1\"]}",
"buildId": null,
"isSelenium": false,
"isExternal": null,
"rpsCompatible": true,
"remoteControlCompatible": true,
"hasMonitoringData": null,
"shouldSendReportEmail": false,
"hasDaggerData": false,
"kinesisStream": "prod-grn_v4pipeline_input",
"properties": [
{
"pairs": [
{
"key": "SampleName",
"value": "MySampler1"
}
],
"testId": 1234567,
"locations": [
"us-east-1"
],
"scenarios": [
"7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 5
}
],
"testId": 1234567,
"locations": [
"us-east-1"
],
"scenarios": [
"7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7"
]
}
],
"created": 1551721720,
"updated": 1551721720,
"note": null,
"testCollectionId": null,
"testId": 1234567,
"projectId": 123456,
"scheduleHistoryRecordId": null,
"jupyterShipId": null,
"sessionsId": [
"r-v4-5c7d64f8c95cf"
],
"functionalSummary": null,
"thresholds": [
{
"thresholds": [
{
"field": "responseTime.avg",
"label": "ALL",
"op": "gt",
"stopTestOnViolation": false,
"value": "1000",
"isEmpty": false
}
],
"ignoreRampup": false,
"ignoreRampupTime": null,
"slidingWindow": false,
"testId": 1234567
}
]
}
}
For the full details of all the attributes for the test run response, you can visit The Master Object.
Start a Multi Test
Start a Multi Test
curl 'https://a.blazemeter.com/api/v4/multi-tests/12345678/start?delayedStart=true' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /multi-tests/{collectionId}/start
To start a preconfigured load test, you need to know the collectionId
of a created and configured test. The sample code executes a test with a collectionId
of 12345678
. Use the collectionId
of the actual test to start in place of the 12345678
.
If you do not know the ID of the test to start, use List Multi Tests to return a list of your created tests.
Start a Multi Test Parameters
Parameters
-
delayedStart
booleanDenotes if the test run will wait to start for a set amount of time after all engines are ready
Start a Multi Test Response Attributes
Response 202 Accepted
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "March_08_9:49 AM - Multi Test",
"userId": 123456,
"publicToken": null,
"ended": null,
"lastUpdate": null,
"delayedStartReady": false,
"runnerUserId": 123456,
"charges": [],
"usage": null,
"maxUsers": null,
"type": null,
"passed": null,
"canControlRampup": null,
"targetThreads": null,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isSandbox": null,
"isPrivateData": false,
"executionMode": null,
"creatorClientId": "gui",
"executorClientId": "gui",
"importedAt": null,
"secondsPerLabelDoc": 60,
"taurusRemoteControlProperties": null,
"labelsCollectionSuffix": "_17_12",
"locations": [
"us-east-1"
],
"scenariosMapping": [
{
"id": "f7cebdaa474a27fc93dcff0fd3d97bd116c1f867a6f17639f0fc197eec1f4e5a",
"name": "default-scenario-1234567",
"test": "New Dummy Test V4 2",
"isEndUserExperience": false
},
{
"id": "420248ab89308dba84fc4c15c70f537cdfc938ff4dbe1dd83a7bfe2be32d2a1a",
"name": "default-scenario-2345678",
"test": "Parallel Controller Script V4",
"isEndUserExperience": false
}
],
"isDebugRun": false,
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 1234567,
"scenario": "default-scenario-1234567"
},
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"testId": 2345678,
"scenario": "default-scenario-2345678"
}
],
"concurrency": 40,
"useV4Pipeline": true,
"terminatedAt": null,
"shutdownAt": null,
"jupyterToken": null,
"jupyterHeartbeat": null,
"jupyterHost": null,
"jupyterPort": null,
"jupyterNotebook": null,
"v4IndexerCollection": "{\"execution\":[1],\"execution:1\":[\"r-v4-5c828f01e093c\",\"r-v4-5c828f01e6d6d\"],\"session:1\":[\"r-v4-5c828f01e093c\",\"r-v4-5c828f01e6d6d\"],\"location:1\":[\"us-east-1\"]}",
"buildId": null,
"isSelenium": false,
"isExternal": null,
"rpsCompatible": false,
"remoteControlCompatible": false,
"hasMonitoringData": null,
"shouldSendReportEmail": true,
"hasDaggerData": false,
"kinesisStream": "prod-grn_v4pipeline_input",
"properties": null,
"created": 1552060161,
"updated": 1552060161,
"note": null,
"testCollectionId": 12345678,
"testId": null,
"projectId": 123456,
"scheduleHistoryRecordId": null,
"jupyterShipId": null,
"sessionsId": [
"r-v4-5c828f01e093c",
"r-v4-5c828f01e6d6d"
],
"functionalSummary": null,
"thresholds": [
{
"thresholds": [],
"ignoreRampup": false,
"ignoreRampupTime": null,
"slidingWindow": false,
"testId": 1234567
},
{
"thresholds": [],
"ignoreRampup": false,
"ignoreRampupTime": null,
"slidingWindow": false,
"testId": 2345678
}
]
}
}
For the full details of all the attributes for the test run response, you can visit The Master Object.
Stop a Test Run
You can stop the execution of tests launched by the Start a Test command using the test's masterId
and the stop API command (preferred method) or the terminate API command.
Stop
Stop an Active Test
curl 'https://a.blazemeter.com/api/v4/masters/12345678/stop' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/stop
To stop the active master
(or test report) of a given test run gracefully (by signaling to JMeter to close the session), POST the masterId
to the stop command (you need to know the masterId
of the active session to stop). All test files will be archived and uploaded to the Logs report. The sample code stops the master
with a masterId
of 12345678
. Use the actual masterId
in place of 12345678
.
Response 202 Accepted
{
"api_version": 4,
"error": null,
"result": [
{
"session_id": "r-v4-5abc8b5ad54bb",
"result": "stopping"
}
]
}
Attributes
-
session_id
stringThe
sessionId
being stopped -
result
stringWill always contain the string
stopping
when using this API
Terminate
Terminate Servers Running a Master
curl 'https://a.blazemeter.com/api/v4/masters/12345678/terminate' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/terminate
To terminate a master
(or test report), POST the masterId
to the terminate command (you need to know the masterId
of the running test). There will be no archiving or uploading of test files to the Log report (all test files will be lost). The sample code stops the master
with a masterId
of 12345678
. Use the actual masterId
in place of the 12345678
.
Response 202 Accepted
{
"api_version": 4,
"error": null,
"result": [
{
"sessions_ids": [
"r-v4-5c7d84e668624"
],
"result": "Terminating"
}
]
}
Attributes
-
session_ids
arrayThe list of
sessionId
s being terminated -
result
stringWill always contain the string
Terminating
when using this API
Stop All Masters of a Test
Stop All Masters of a Test
curl 'https://a.blazemeter.com/api/v4/tests/1234567/stop' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /tests/{testId}/stop
To stop all active masters
of a test, POST the testId
to the /tests/{testId}/stop
API. The sample code stops all tests with a testId
of 1234567
. Use the testId
of the actual test to stop in place of the 1234567
.
To find the testId
, you can either use the UI (see Get the testId
) or the response from the test creation call (see Create a Test).
Stop All Masters of a Test Response Attributes
Response 202 Accepted
{
"api_version": 4,
"error": null,
"result": [
{
"session_id": "r-v4-5c7d8a611c7df",
"result": "Stopping"
},
{
"session_id": "r-v4-5c7d8a55a745e",
"result": "Stopping"
}
]
}
Attributes
-
session_id
stringThe
sessionId
being stopped -
result
stringWill always contain the string
stopping
when using this API
Track Status of a Test Run
Track Status of a Test Run
curl 'https://a.blazemeter.com/api/v4/masters/12345678/status?level=DEBUG' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/status
To obtain the present status of a test run, use its masterId
and the status
endpoint. This endpoint returns the real-time status of a test during its start, run, and stopping phases. Use the endpoint without any parameters (other than authentication) to return a list of all events of INFO status 200
and above. The sample code returns the status of a test run with the masterId
of 17462719
. Use the actual masterId
in place of the 17462719
.
Track Status of a Test Run Parameters
Parameters
-
level
stringOptional event level to return. Set to:
100
DEBUG
200
INFO (default)
250
NOTICE
300
WARNING
400
ERROR
500
CRITICAL
550
ALERT
600
EMERGENCY -
events
booleanInclude complete list of events for the event level (and above). Set to
true
(default) orfalse
Track Status of a Test Run Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"progress": 140,
"status": "ENDED",
"jmeterLogSummary": [],
"jmeterLogTypeSummary": [],
"sessions": [
{
"id": "r-v4-5f50ecd1568ef",
"name": "Assertions in V4",
"fileName": "my-script.jmx",
"status": "ENDED",
"progress": 140,
"readyStatus": {
"servers": [
{
"server_id": "3924139065929978424",
"server_type": "console"
}
],
"plannedServersCount": 1,
"isDelayedStart": false
},
"locationId": "us-east4-a",
"dedicatedIpsEnabled": false,
"overrideLocationId": null
}
],
"statuses": {
"pending": 0,
"booting": 0,
"downloading": 0,
"ready": 0,
"ended": 100
},
"isDataAvailable": true,
"events": [
{
"t": 1599142726,
"from": 0,
"source": "system",
"message": "Status changed to ENDED (140)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142726,
"from": -6,
"source": "system",
"message": "Terminate command sent",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142725,
"from": -6,
"source": "system",
"message": "Status changed to TAURUS_IMAGE_DONE (136)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142725,
"from": -6,
"source": "system",
"message": "Taurus completed (Exit: 0)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142725,
"from": -6,
"source": "system",
"message": "0 seconds until process run completion",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142725,
"from": -6,
"source": "system",
"message": "Finished file upload",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142724,
"from": -6,
"source": "system",
"message": "Artifacts zip files generated [/tmp/artifacts/artifacts.zip, /tmp/artifacts/artifacts.zip.tail.bz]",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142723,
"from": -6,
"source": "system",
"message": "Zipping path /tmp/artifacts",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142723,
"from": -6,
"source": "system",
"message": "Zipping artifacts into file /tmp/artifacts/artifacts.zip",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/effective.json",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/jetlag.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/cloud-launcher.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/network_checking.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/jetlag-download.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/effective.yml",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/merged.json",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/final-overrides.yml",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/exported.jetlag.ldjson",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Zipping artifacts into file /tmp/artifacts/admin-artifacts.zip",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Zipping path /tmp/artifacts/admin",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142722,
"from": -6,
"source": "system",
"message": "Admin artifacts zip files generated [/tmp/artifacts/admin-artifacts.zip, /tmp/artifacts/admin-artifacts.zip.tail.bz]",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Collecting atop.binlog - saving to log file",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving admin artifacts and creating zip",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/taurus-custom-config.yml",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/merged.yml",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "File /tmp/artifacts/taurus-base-config.yml not found on disk",
"level": "WARNING",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/jetpack-download.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "File /tmp/artifacts/taurus_start.log not found on disk",
"level": "WARNING",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/jetpack.log",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142721,
"from": -6,
"source": "system",
"message": "Moving file /tmp/artifacts/jetpack.properties",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142720,
"from": -6,
"source": "system",
"message": "Starting cloud shutdown",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142720,
"from": -6,
"source": "system",
"message": "Status changed to TAURUS_BZT_DONE (135)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142720,
"from": -6,
"source": "system",
"message": "Process cleanup completed",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142720,
"from": -6,
"source": "system",
"message": "Running process cleanup",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599142711,
"from": -6,
"source": "system",
"message": "Status changed to TERMINATING (130)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139123,
"from": null,
"source": "system",
"message": "Status changed to DATA_RECEIVED (100)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139103,
"from": -6,
"source": "system",
"message": "Status changed to TAURUS_ENGINE_INIT (71)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139103,
"from": -6,
"source": "system",
"message": "Status changed to TAURUS_ENGINE_READY (90)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139090,
"from": -6,
"source": "system",
"message": "Jetpack: Starting jetpack...",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139090,
"from": -6,
"source": "system",
"message": "Jetpack: Version 5.0.1",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139086,
"from": -6,
"source": "system",
"message": "Jetpack: Download process completed",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139086,
"from": -6,
"source": "system",
"message": "Jetpack: Downloading skipped (https://s3.amazonaws.com/blazemeter/install/artifacts/jetpack/stable/jetpack-5.0.1-c01510ee5a.jar)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139084,
"from": -6,
"source": "system",
"message": "Jetlag: Download process completed",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139084,
"from": -6,
"source": "system",
"message": "Jetlag: Skip download ()",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139084,
"from": -6,
"source": "system",
"message": "Running command: atop ('-a', '-w', '/tmp/artifacts/admin/atop.binlog', '15')",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139080,
"from": -6,
"source": "system",
"message": "verify_ssl value: ",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139080,
"from": -6,
"source": "system",
"message": "Downloading the custom configuration file from https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/custom-config",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139080,
"from": -6,
"source": "system",
"message": "Status changed to INIT_SCRIPT (50)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139080,
"from": -6,
"source": "system",
"message": "Cloud-launcher is running in a Linux environment - setting iptables",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139080,
"from": -6,
"source": "system",
"message": "Running BZT...",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139079,
"from": -6,
"source": "system",
"message": "Data is not a yaml. Closing original config file as empty.",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139079,
"from": -6,
"source": "system",
"message": "Downloading the configuration file from https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/original-config",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139079,
"from": -6,
"source": "system",
"message": "Getting base configuration from configuration file https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/original-config and additional configuration from the custom configuration https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/custom-config",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Running Taurus update",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Prepare: Verify file path /usr/local/bztcloud",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Prepare: file path created",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Starting Taurus Cloud - Cloud Launcher",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Testing Operation System: ***linux***",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "[Init Info: Before init variables] \n\t\t\t\t\t\t\toriginal_config: https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/original-config \n\t\t\t\t\t\t\tcustom_config: https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/custom-config \n\t\t\t\t\t\t\tEVENTS_URL: https://data.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/events \n\t\t\t\t\t\t\tFILE_NAME: my-script.jmx \n\t\t\t\t\t\t\tSCRIPT_TYPE: jmeter \n\t\t\t\t\t\t\tINSTANCE ID: None",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Session id is set",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Starting Taurus update",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Taurus update complete",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "[Init Info: After init variables] \n\t\t\t\t\t\t\toriginal_config: https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/original-config \n\t\t\t\t\t\t\tcustom_config: https://a.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/custom-config \n\t\t\t\t\t\t\tEVENTS_URL: https://data.blazemeter.com/api/v4/taurus/r-v4-5f50ecd1568ef/events \n\t\t\t\t\t\t\tFILE_NAME: my-script.jmx \n\t\t\t\t\t\t\tSCRIPT_TYPE: jmeter \n\t\t\t\t\t\t\tINSTANCE ID: None",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Running blacklist check",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139078,
"from": -6,
"source": "system",
"message": "Blacklist check completed (Check: 0)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: file path created",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: Verify file path /usr/local/taurus-cloud/files",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: file path created",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: Verify file path /tmp/artifacts/admin",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: file path created",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: Verify file path /tmp/artifacts",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: file path created",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: Verify file path /usr/local",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139077,
"from": -6,
"source": "system",
"message": "Prepare: Preparing test launcher environment",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139029,
"from": 0,
"source": "system",
"message": "Status changed to PREPARING_PROVISIONING (14)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139026,
"from": 0,
"source": "system",
"message": "Status changed to PREPARING_PROVISIONING (14)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
},
{
"t": 1599139026,
"from": 0,
"source": "system",
"message": "Status changed to CONFIGURING_DEPENDENCIES (10)",
"level": "INFO",
"session_id": "r-v4-5f50ecd1568ef"
}
]
},
"request_id": "5f51086221649"
}
Attributes
-
id
integerThe
masterId
of this master -
progress
integerThe current progress of this master. Can be one of the following values (the list will correspond with the
status
attribute list):0
5
10
14
15
20
25
40
45
50
60
70
71
80
90
99
100
120
130
135
136
140
150
-
status
stringThe current status of this master. Can be one of the following values (the list will correspond with the
status
attribute list):UNKNOWN
CREATE
CONFIGURING_DEPENDENCIES
PREPARING_PROVISIONING
INITIALIZING
RETRYING
BOOT_STARTING
BOOT_COMPLETE
INSTANCE_ALIVE
INIT_SCRIPT
FILES_DOWNLOADED
JMETER_ENGINE_INIT
TAURUS_ENGINE_INIT
JMETER_CONSOLE_INIT
TAURUS_ENGINE_READY
JETPACK_DATA_RECEIVED
DATA_RECEIVED
FINALIZING
TERMINATING
TAURUS_BZT_DONE
TAURUS_IMAGE_DONE
ENDED
NULL
-
sessions
arrayList of session details for this master
-
id
stringThe status of this session by
sessionId
-
name
stringThe name of the master this session is tied to
-
fileName
stringThe name of the file this master starts with
-
status
stringThe current status of this master. Can be one of the following values (the list will correspond with the
status
attribute list):UNKNOWN
CREATE
CONFIGURING_DEPENDENCIES
PREPARING_PROVISIONING
INITIALIZING
RETRYING
BOOT_STARTING
BOOT_COMPLETE
INSTANCE_ALIVE
INIT_SCRIPT
FILES_DOWNLOADED
JMETER_ENGINE_INIT
TAURUS_ENGINE_INIT
JMETER_CONSOLE_INIT
TAURUS_ENGINE_READY
JETPACK_DATA_RECEIVED
DATA_RECEIVED
FINALIZING
TERMINATING
TAURUS_BZT_DONE
TAURUS_IMAGE_DONE
ENDED
NULL
-
progress
integerThe current progress of this master. Can be one of the following values (the list will correspond with the
status
attribute list):0
5
10
14
15
20
25
40
45
50
60
70
71
80
90
99
100
120
130
135
136
140
150
-
readyStatus
objectThe ready status of this master
-
servers
arrayThe servers that are being used for this session
-
server_type
stringWill always be
console
-
-
plannedServersCount
integerThe number of servers planned for this session
-
isDelayedStart
booleanDenotes if delayed start was used or not for this session
-
-
locationId
stringThe
location Id
where this session is running -
dedicatedIpsEnabled
booleanDenotes if dedicated IPs were used for this session or not
-
-
statuses
objectA percentage breakdown of all the session status for this master
-
pending
integerPercent of machines that are still being provisioned
-
booting
integerPercent of machines that are booting
-
downloading
integerPercent of machines that are downloading necessary files
-
ready
integerPercent of machines that are ready to start
-
ended
integerPercent of machines that have finished running
-
-
isDataAvailable
booleanDenotes if there is data available for this master or not
-
events
arrayList of events that occurred while the master is active
-
t
integerThe timestamp when this event occurred
-
source
stringThe source of this event. Can be one of the following:
system
user
-
message
stringThe message returned for this event
-
level
stringThe logging level of this event. Can be any of the following:
DEBUG
INFO
NOTICE
WARNING
ERROR
CRITICAL
ALERT
EMERGENCY
-
session_id
stringThe
sessionId
where this event occurred
-
Test Results
Retrieve test results using the masters
endpoint. The following topics provide information on using the API to retrieve high level overviews, gather summary results, request statistics, error statistics, threshold statistics, time-series data, custom time-series data and retrieving logs.
Master Details
Master Details
curl 'https://a.blazemeter.com/api/v4/masters/12345678' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}
The high-level summary includes the following data:
- Maximum concurrency level (users) reached
- Overall test pass/failure status
- Duration (min)
- Started (Epoch Time)
- Ended (Epoch Time)
- Test Type
- List of locations and scenarios
- Notes
The pass/failure status of the master is represented as a boolean value ("true" for pass, "false" for fail) that follows the attribute "passed". The sample code shows a "passed" master of a test. If no failure criteria were specified, the entire key/value pair would simply be omitted from the response, and the Pass/Fail status displayed in the UI would say "Not Set".
To learn more about how to set failure criteria, visit the article Test Failure Criteria. For a more detailed breakdown of Test Failure Criteria, check out the threshold statistics section.
The sample code retrieves data for a masterId
of 12345678
. Use the actual masterId
in place of 12345678
.
Master Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "Full Test Example",
"userId": 123456,
"publicToken": "i4QiExnJ7Sz6RXsmeJWmKGoq4mZEepU9k5ZPSDwnLlQVn8PF19",
"ended": 1599076624,
"lastUpdate": 1599075313,
"delayedStartReady": true,
"runnerUserId": 123456,
"charges": [],
"maxUsers": 20,
"created": 1599075175,
"updated": 1599077683,
"note": "This is a note",
"passed": true,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isPrivateData": false,
"creatorClientId": "gui",
"executorClientId": "gui",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"isDebugRun": false,
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenariosMapping": [
{
"id": "62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"name": "default-scenario-1234567",
"test": "Full Test Example",
"isEndUserExperience": false
},
{
"id": "a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485",
"name": "End User Experience for Full Test Example",
"test": "Full Test Example",
"isEndUserExperience": true
}
],
"executions": [
{
"concurrency": 20,
"usersNotConfigured": false,
"holdFor": "19m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"throughput": 10,
"locations": {
"us-east4-a": 10,
"us-east1-b": 10
},
"locationsPercents": {
"us-east4-a": 50,
"us-east1-b": 50
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
},
{
"concurrency": 1,
"holdFor": "1200s",
"durationIsNotConfigured": false,
"executor": "selenium",
"executionSource": "endUserExperience",
"scenario": "End User Experience for Full Test Example"
}
],
"useV4Pipeline": true,
"isSelenium": false,
"hasMonitoringData": true,
"rpsCompatible": false,
"remoteControlCompatible": true,
"hasDaggerData": true,
"hasData": true,
"shouldUseDaggerReport": true,
"properties": [
{
"pairs": [
{
"key": "newProperty",
"value": "aValue"
}
],
"testId": 1234567,
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 10
}
],
"locations": [
"us-east4-a",
"us-east1-b"
],
"scenarios": [
"62efbba7487d22dc23663844121493c09a1ac48b71c4a30d6c30cc97610c7ece",
"a554ead1bb83b8a545cd841054cb3d0cb346b92b0a5b813652002a4d1a6e7485"
]
}
],
"dependencies": [
{
"services": [
{
"service": "BlazeDemo",
"mock-service": "Entries Mock Service",
"mock-service-template": "Blazedemo Entries Template"
}
]
}
],
"testId": 1234567,
"projectId": 123456,
"sessionsId": [
"r-v4-5f4ff36807701",
"r-v4-5f4ff36808873",
"r-eux-5f4ff36809597"
],
"thumbnailUrl": null,
"hasErrorsPerInterval": true,
"sessions": [
"r-v4-5f4ff36807701",
"r-v4-5f4ff36808873",
"r-eux-5f4ff36809597"
],
"jetpackLabels": [
{
"id": "5a212f0d83b87585c312053aa3d9356faedcd7c83e2e862856bfab3bb352ddb3",
"name": "Dummy Sampler 9-4"
},
{
"id": "2c4c77b439900407b286f4eb33b7160d476a16af900ca18a654ad7e061e47217",
"name": "Dummy Sampler 10-5"
},
{
"id": "99ee3d9fd98eac61d70ba85d8171b972356efa76fe998b762727607bfa44774a",
"name": "Dummy Sampler 4-5"
},
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL"
},
{
"id": "426b8776c5aea18236671c2031b79e03e36ae61e9525274ff37c4abd8cbf402a",
"name": "Dummy Sampler 4-3"
},
{
"id": "de5a49b6043c130e9fd482dfff6e039106c712db6471cf1f41f17b702ae1560b",
"name": "Dummy Sampler 6-2"
},
{
"id": "868ec8f6c10315c31b1c48a07ce3087f7af4c33cbbca2af9f1137e99a87528ad",
"name": "Dummy Sampler 10-4"
},
{
"id": "ecaf89656817ae7dd9c8cc7c9124dfe2af0e7ee8b6c72c62731ca597245e6df5",
"name": "Dummy Sampler 3-4"
},
{
"id": "d26beb176d6172083f44e386db016ffe202064b9473b565dec7faed943579b99",
"name": "Dummy Sampler 4-4"
},
{
"id": "5421f70a20a4cc21671898f969227cf0f7945d8bb64748fe24e97ad8ee12a4bd",
"name": "Dummy Sampler 3-3"
},
{
"id": "0f8344b783b59a723f7b49f7ec569f4c0c4fd860bd3ef1cdf5d8ac8f8b1b5cb5",
"name": "Dummy Sampler 1-4"
},
{
"id": "66c400f522edc78b20cc31742ef1ee72de8e9bd652f119da0a9e619bdcfd5f10",
"name": "Dummy Sampler 7-2"
},
{
"id": "4e55dd94b0687148f4d3fb819da192caf00af1da9ab4e794922ecee2eb9bcca4",
"name": "Dummy Sampler 3-5"
},
{
"id": "6a8331f28925eae87d618fa2a7d34044c8a4640e7f08850d0888737d9e79734d",
"name": "Dummy Sampler 5-5"
},
{
"id": "877e982d386229478e921a65cbbaa84fb1c14e58d5754216372ea07f79fffcce",
"name": "Dummy Sampler 4-1"
},
{
"id": "c5f2e3537e2b7f2fa204abf63de8bc339036b7eee0f9fcb7168995cf3842a04d",
"name": "Dummy Sampler 2-5"
},
{
"id": "e934b78602eea603ed22388d47aa3090ec643c8dcd604a1ded0f21e8b97f84d3",
"name": "Dummy Sampler 5-2"
},
{
"id": "3c62fe114a84758fc274ef77eeda9ba81e0c0de495ff2786da892245ca25d8a4",
"name": "Dummy Sampler 7-4"
},
{
"id": "76b730928743456b46da5cc919aab783cc9780ee49267ab1ea37af9002c48002",
"name": "Dummy Sampler 3-1"
},
{
"id": "774a039661eb7bbf98665e4d3d28d897de8287e38c190400d8eae2a81dbead99",
"name": "Dummy Sampler 9-5"
},
{
"id": "c21cc688dc79cc813588c83720a676308b5713747f01bab1b9ded2729ae87a2e",
"name": "Dummy Sampler 9-3"
},
{
"id": "0656cd0ee5501a550338a725de214239f39aaa90b30cf9d0231f71a01c8f6a2e",
"name": "Dummy Sampler 1-2"
},
{
"id": "585ee62293662d8e2c161c2621efe4e4b7d8e7cd8de5d19699ee943fb7e0d4f9",
"name": "Dummy Sampler 2-2"
},
{
"id": "48fb09b24a0ba3106d2a69267c586cd72b46a6690601cfe981e11dfb364be295",
"name": "Dummy Sampler 2-4"
},
{
"id": "855c41608c960154b1a940db88eb07a6e2ebd670ae17bcf1c9949089645569b1",
"name": "Dummy Sampler 7-3"
},
{
"id": "6ee11a45e8d1a5ff876fbdc353222498de95de841cb4ac54e977507fe117ba37",
"name": "Dummy Sampler 1-5"
},
{
"id": "e1b1583297ba88ea9692c62e653f9e05a117c296d425d28921b0ea0ade936118",
"name": "Dummy Sampler 2-3"
},
{
"id": "c646927269709fd3d09c9119fcc5b759e9e02ee703d22b8380ef4ed9bdbd1496",
"name": "Dummy Sampler 5-1"
},
{
"id": "e6ea544605da60c4de5d5d1c3a47a28c532c6c1e4f58c5747def5224b31eb3e9",
"name": "Dummy Sampler 6-1"
},
{
"id": "0afba9498eb0587a5be28586c9fa0111de1bf3475dbe9618ec75e4f46814de56",
"name": "Dummy Sampler 2-1"
},
{
"id": "c07913d9d35b4071bbf32ceade632e424e173ba0eb616adf5749f613f5596c87",
"name": "Dummy Sampler 5-3"
},
{
"id": "04493fa0833a77105483f32fe2a32e1baca420ea9d6cda52e876010f91b2e087",
"name": "Dummy Sampler 6-3"
},
{
"id": "90a45f6678302659a4ba252cf7169c76663c4a08bd73331b00a6ecd630e8ec03",
"name": "Dummy Sampler 8-1"
},
{
"id": "a33853e884ae4a2f332974875b8f8f0a4521c8c28112e9910b52680582f72dbb",
"name": "Dummy Sampler 7-1"
},
{
"id": "cbd50211d966c8460e31be9a0622aa1ef614c10626c86013edee4b8ffe995d63",
"name": "Dummy Sampler 3-2"
},
{
"id": "6be96150c1e953e08a3a1911d9db6ce1f36946840832ea4d3367c781fd2ac6c0",
"name": "Dummy Sampler 1-1"
},
{
"id": "503a51d46af9a41c84f14c6c0d58bf93c5f28da66fd71356fa6ccd8cdf062b2e",
"name": "Dummy Sampler 6-4"
},
{
"id": "482d2e3c84148a2a549ce24722c15ca49b9fbe0a7b8ecfe9b9600f21f47f2f26",
"name": "Dummy Sampler 5-4"
},
{
"id": "07f8cd6ee5c77a7e8ed1430254f701d6fec3ef0aed713d34816734877b8bc086",
"name": "Dummy Sampler 4-2"
},
{
"id": "d0dd6e4b1eddc8042df773895be292546b71244763b6dbe5f456888d759a0636",
"name": "Dummy Sampler 10-2"
},
{
"id": "73aa5e01278dab139d90c1e9aa23c990382944709cceac06d10cd65a4b831d7f",
"name": "Dummy Sampler 6-5"
},
{
"id": "91132961357b44bcca8cd41ab98e51ea52bb79635a6fbd2ed846793db5327960",
"name": "Dummy Sampler 8-2"
},
{
"id": "598fe62bc04988ae02ee66948b62ce5cb51aea16cfcd790e398f3b176b125543",
"name": "Dummy Sampler 8-3"
},
{
"id": "47687360da0c21b9b8c24a330319e5106eb2212f5ef4d93a4f566cb15284cf81",
"name": "Dummy Sampler 7-5"
},
{
"id": "05370c567029cd96cdd248188806f0f9ea114277ed0ec1fab4b616964dfbba7f",
"name": "Dummy Sampler 10-3"
},
{
"id": "c013b818a253f344d1109bebece47c68eefb8a09e7614ad6665a53faf52bcc5b",
"name": "Dummy Sampler 8-4"
},
{
"id": "6db63263206a77caf33733fa38cca9daa3af616ee02fa331cdf4ef08ff07c20c",
"name": "Dummy Sampler 10-1"
},
{
"id": "8d2c3b33df4519ef590751a725db1ab4f2d8af63f0230ecb8dfa04395b49142c",
"name": "Dummy Sampler 1-3"
},
{
"id": "ddb1b74c3f9f21baac105072fbd95e879a946f47e23e40d7c00565a99acacd7d",
"name": "Dummy Sampler 8-5"
},
{
"id": "5322c068c11819ca569e53f83db83ee0c7de04f131f5163d67071cb1697cce49",
"name": "Dummy Sampler 9-1"
},
{
"id": "778b52e53a9424f23a05b4702455800f338e8990d5cfdf01606ea25eb1d6dcfc",
"name": "Dummy Sampler 9-2"
}
]
},
"request_id": "5f4ffd4318af4"
}
See the Master Object for a detailed breakdown of the master
object.
List Masters
List Masters
curl 'https://a.blazemeter.com/api/v4/masters?testId=1234567' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters
To obtain a list of all masters (containing every masterId
for a test), use the testId
and the /masters
endpoint. The sample code returns masters with a testId
of 1234567
. Use the actual testId
in place of the 1234567
. The response shown includes one masterId
("id": 12345678
). Any additional runs of the testId
(every masterId
) will also be returned in the response.
List Masters Parameters
Parameters
-
projectId
integerThe
projectId
you are wanting to get the list of masters from -
workspaceId
integerThe
workspaceId
you are wanting to get the list of masters from -
testId
integerThe
testId
you are wanting to get the list of masters from -
name
stringThe unique string for a test suite name to search for. For example, the string
My Test
will pull all results with this string in thename
of the multi test -
collectionId
integerThe
collectionId
you are wanting to get the list of masters from -
passed
booleanDenotes is the test
passed
orfailed
based on the test failure criteria set -
startTime
integerThe start time (using a timestamp) for which to search for masters (i.e. finding masters that ran after May 1, 2020 is timestamp 1588377599)
-
endTime
integerThe end time (using a timestamp) for which to search for masters (i.e. finding masters that ran before May 1, 2020 is timestamp 1588291200)
-
includeDebugRuns
booleanDenotes if you want to include any debug masters or not
-
platform
stringPoints to the platform you want masters from. Will always be
peformance
for Performance tests -
locations
stringSearches for masters with the given
location Id
Also see: Pagination and Sorting
List Masters Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 1,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 12345678,
"name": "V4 Remote Control Test",
"userId": 123456,
"ended": 1551721953,
"delayedStartReady": false,
"runnerUserId": 123456,
"charges": [],
"maxUsers": 20,
"created": 1551721720,
"updated": 1551721954,
"passed": true,
"parallelTestsInWorkspace": 1,
"parallelTestsInAccount": 1,
"isPrivateData": false,
"creatorClientId": "gui",
"executorClientId": "api",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"isDebugRun": false,
"locations": [
"us-east-1"
],
"scenariosMapping": [
{
"id": "7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7",
"name": "default-scenario-6606270",
"test": null,
"isEndUserExperience": false
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"throughput": 5,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6606270"
}
],
"useV4Pipeline": true,
"shutdownAt": 1551721933,
"isSelenium": false,
"hasMonitoringData": true,
"rpsCompatible": true,
"remoteControlCompatible": true,
"hasDaggerData": true,
"properties": [
{
"pairs": [
{
"key": "SampleName",
"value": "MySampler1"
}
],
"testId": 1234567,
"locations": [
"us-east-1"
],
"scenarios": [
"7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7"
]
},
{
"pairs": [
{
"key": "blazemeter.throughput",
"value": 5
}
],
"testId": 1234567,
"locations": [
"us-east-1"
],
"scenarios": [
"7955907f886baf352a5dd51d04f91b5c209e9af71fb2f035a785614601f3ffd7"
]
}
],
"testId": 1234567,
"projectId": 123456,
"sessionsId": [
"r-v4-5c7d64f8c95cf"
]
}
]
}
See the Master Object for a detailed breakdown of the master
object.
Update a Master
Update a Master
curl 'https://a.blazemeter.com/api/v4/masters/12345678' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"note": "This is a note", "name": "Assertions in V4 - Report Name"}'
API Explorer: /masters/{masterId}
To update a test, use PATCH to change the provided configuration for a given test (you need to know the masterId
). The sample code updates a master with an ID of 12345678
(the 12345678
is contained in the URL) with a new master name Assertions in V4 - Report Name
and a note of This is a note
.
See the Master Object for the attributes that you can modify.
Update a Master Request Attributes
Update a Master Update a Master PATCH Body (JSON)
{
"note": "This is a note",
"name": "Assertions in V4 - Report Name"
}
Attributes
-
note
stringContains notes for the given master
-
name
stringThe test report name
Update a Master Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 12345678,
"name": "Assertions in V4 - Report Name",
"userId": 123456,
"ended": 1599142726,
"delayedStartReady": false,
"runnerUserId": 123456,
"charges": [],
"terminateWorkersExecuted": false,
"maxUsers": 10,
"hasData": true,
"passed": true,
"parallelTestsInWorkspace": 2,
"parallelTestsInAccount": 2,
"isPrivateData": false,
"isQueued": false,
"creatorClientId": "gui",
"executorClientId": "gui",
"secondsPerLabelDoc": 60,
"labelsCollectionSuffix": "_17_12",
"locations": [
"us-east4-a"
],
"scenariosMapping": [
{
"id": "0b0e1f73f1f3868f9d55c5b597dabb6d482099f7e43fe7d5dd3a520bf074a718",
"name": "default-scenario-1234567",
"test": "Assertions in V4",
"isEndUserExperience": false
}
],
"isDebugRun": false,
"executions": [
{
"concurrency": 10,
"usersNotConfigured": false,
"holdFor": "59m",
"durationIsNotConfigured": false,
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east4-a": 10
},
"locationsPercents": {
"us-east4-a": 100
},
"executor": "jmeter",
"scenario": "default-scenario-1234567"
}
],
"concurrency": 10,
"useV4Pipeline": true,
"v4IndexerCollection": "{\"execution\":[1],\"execution:1\":[\"r-v4-5f50ecd1568ef\"],\"session:1\":[\"r-v4-5f50ecd1568ef\"],\"location:1\":[\"us-east4-a\"]}",
"isSelenium": false,
"rpsCompatible": false,
"remoteControlCompatible": true,
"hasMonitoringData": true,
"shouldSendReportEmail": false,
"shouldUseDaggerReport": true,
"hasDaggerData": true,
"kinesisStream": "prod-purp_v4pipeline_input",
"useJetlag": false,
"properties": [
{
"pairs": [
{
"key": "myProperty",
"value": "aValue"
}
],
"testId": 1234567,
"locations": [
"us-east4-a"
],
"scenarios": [
"0b0e1f73f1f3868f9d55c5b597dabb6d482099f7e43fe7d5dd3a520bf074a718"
]
}
],
"jetpackLabels": [
{
"id": "045c62992049f8457bb198fa752a7e771c0fca4ae8eb4321434565da4e79ac24",
"name": "200, failed sample and failed assertion"
},
{
"id": "f2b5756a9bab9c338cf0c44dde9eda984031035c592f91d8288719c7284845f2",
"name": "500 and no assertion"
},
{
"id": "825fc37144b48edb93cec4ccec42111f9bc53e76a3dba065b667c77afcb207e6",
"name": "401 and failed assertion"
},
{
"id": "890c0b72d2943fb411229ab61aab9ce9ba1c44b60ca86a995c502884c2c23f48",
"name": "200, failed sample and no assertion"
},
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL"
},
{
"id": "c5448e20c2691dc557a8300817badbdc8944dfec39e1416d183c6bc20a2620a7",
"name": "200 and failed assertion"
},
{
"id": "a240fdd4814411a72df79a9cc58ccd899701cfb24c5312e423711095c356bb39",
"name": "200 and successfull assertion"
},
{
"id": "aad2c8fe5349f04f2abcbe2663225ee32a2d58032826b2e3df5c6ac774db0faf",
"name": "400 and successfull assertion"
}
],
"dependencies": [
[]
],
"env": "https://a.blazemeter.com",
"enableFailureCriteria": {
"7056614": true
},
"enableLoadConfiguration": true,
"created": 1599139024,
"updated": 1599158139,
"note": "This is a note",
"thresholds": [
{
"thresholds": [
{
"field": "responseTime.percentile.90",
"label": "200 and successfull assertion",
"op": "gt",
"stopTestOnViolation": true,
"value": "2000",
"isEmpty": false
},
{
"field": "responseTime.avg",
"label": "I don't exixt",
"op": "lt",
"stopTestOnViolation": false,
"value": "44",
"isEmpty": false
}
],
"ignoreRampup": true,
"fromTaurus": false,
"slidingWindow": true,
"testId": 1234567
}
]
},
"request_id": "5f51377b3ea16"
}
See the Master Object for a detailed breakdown of the master
object.
Add a Public Token
Add a Public Token
curl 'https://a.blazemeter.com/api/v4/masters/12345678/public-token' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"publicToken":null}'
API Explorer: /masters/{masterId}/public-token
To create a public token for a given master, you need to know the masterId
of a givne master. The sample code creates a public token with a masterId
of 12345678
. Use the masterId
of the actual master you want to add the public token to in place of 12345678
.
Add a Public Token Request Attributes
Add a Public Token Add a Public Token POST Body (JSON)
{
"publicToken": null
}
Attributes
-
publicToken
nullrequired
The public token attached to this master. This should always be set to
null
Add a Public Token Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"publicToken": "RUSd9VYDPnIW5SmBWDkqRXeovQ5U0XFtwGCLNikkxgELMGSafl",
"new": false
},
"request_id": "5ef2054733d53"
}
Attributes
-
publicToken
stringread-only
The token that is generated to allow for public access to the report. This value goes into the following part of the blazemeter URL:
https://a.blazemeter.com/app/?public-token={publicToken}
#/.../masters/{masterId}
Delete a Public Token
Delete a Test
curl 'https://a.blazemeter.com/api/v4/masters/12345678/public-token' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /masters/{masterId}/public-token
To delete a public token from a master, you need to know the masterId
that is using the public token. The sample code deletes a public token for a master with an ID of 12345678
. Use the masterId
of the actual test to delete in place of the 12345678
.
Summary Statistics
Summary Statistics
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/default/summary' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/reports/{reportId}/summary
To get high level summary statistics, use the masterId
and /masters/{masterId}/reports/default/summary
endpoint. The sample code returns summary stats for the masterId
of 12345678
. Use the masterId
of the actual test run in place of 12345678
.
The response contains an array that contains the full summary of the master.
All time values are in milliseconds (ms) and times provided are in Epoch Time.
Summary Statistics Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"summary": [
{
"avg": 125.41050552890562,
"bytes": 30524070,
"concurrency": 60,
"duration": 1200,
"durationIsNotConfigured": false,
"failed": 93395,
"first": 1551801914,
"histogram": {
"mean": 83
},
"hits": 246613,
"id": "ALL",
"last": 1551803114,
"lb": "ALL",
"tp90": 110,
"min": 50,
"max": 647
}
],
"jmeterLogSummary": [],
"jmeterLogTypeSummary": [],
"maxUsers": 60
}
}
Attributes
-
summary
arrayread-only
The summary statistics for this test run
-
avg
floatread-only
Average Response Time
-
bytes
integerread-only
Average Bandwidth
-
concurrency
integerread-only
-
duration
integerread-only
Duration of Test Run
-
durationIsNotConfigured
booleanread-only
Denotes whether the duration was not configured or not
-
failed
integerread-only
Total Number of Errors
-
first
integerread-only
Timestamp (Epoch Time) of First Sample
-
hits
integerread-only
Average Hits/Sec
-
id
stringread-only
The
labelId
the summary was pulled from. Will always beALL
-
last
integerread-only
Timestamp (Epoch Time) of Last Sample
-
lb
stringread-only
Will always get the results from
"ALL"
label (which contains the data for all requests and responses) -
tp90
integerread-only
Max response time for 90% of samples
-
min
integerread-only
Minimum Response Time
-
max
integerread-only
Max Response Time
-
-
maxUsers
integerread-only
The maximum concurrency the test reached
Request Statistics
Request Statistics
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/aggregatereport/data' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/reports/{reportId}/data
To get high level ("labelName": "ALL"
) and per label statistics, use the masterId
and /masters/{masterId}/reports/aggregatereport/data
endpoint. The sample code returns stats for each request with a masterId
of 12345678
. Use the masterId
of the actual master in place of 12345678
.
The response contains an array of objects, one for each request (label) and its corresponding data.
All time values are in milliseconds (ms).
Request Statistics Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"avgBytes": 3.9289999999999998,
"avgLatency": 0,
"avgResponseTime": 607.20296093084858,
"avgThroughput": 17.647746243739565,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"labelName": "bzm - Parallel Controller Dummy",
"90line": 611,
"95line": 611,
"99line": 611,
"maxResponseTime": 619,
"medianResponseTime": 611,
"minResponseTime": 600,
"samples": 21142,
"stDev": 2.7349000955906688,
"concurrency": 20
},
{
"avgBytes": 7.5170000000000003,
"avgLatency": 16.561672462217466,
"avgResponseTime": 282.59748227898888,
"avgThroughput": 49.888240200166805,
"duration": 1199,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"labelName": "ALL",
"90line": 611,
"95line": 611,
"99line": 611,
"maxResponseTime": 619,
"medianResponseTime": 108,
"minResponseTime": 100,
"samples": 59816,
"stDev": 240.23588800646482,
"concurrency": 40
},
{
"avgBytes": 3.5939999999999999,
"avgLatency": 25.615478098981228,
"avgResponseTime": 105.14469669545431,
"avgThroughput": 32.28213689482471,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"labelName": "Dummy Sample",
"90line": 110,
"95line": 110,
"99line": 111,
"maxResponseTime": 117,
"medianResponseTime": 105,
"minResponseTime": 100,
"samples": 38674,
"stDev": 3.1836156424647122,
"concurrency": 20
}
]
}
Attributes
-
avgBytes
floatread-only
Average Bandwidth
-
avgLatency
integerread-only
Average Latency
-
avgResponseTime
floatread-only
Average Response Time
-
avgThroughput
floatread-only
Average Hits/s
-
duration
integerread-only
Duration of test in seconds
-
errorsCount
integerread-only
Total Number of Errors
-
errorsRate
integerread-only
Error Percentage
-
labelId
stringread-only
The labelId for this label
-
labelName
stringread-only
Name of the label
-
90line
integerread-only
Max Response Time for 90% of samples
-
95line
integerread-only
Max Response Time for 95% of samples
-
99line
integerread-only
Max Response Time for 99% of samples
-
maxResponseTime
integerread-only
Maximum Response Time
-
medianResponseTime
integerread-only
Maximum Response Time for 50% of samples
-
minResponseTime
integerread-only
Minimum Response Time
-
samples
integerread-only
Number of Samples
-
stDev
floatread-only
Standard Deviation (a measure of variation) of the sample elapsed time
-
concurrency
integerread-only
Error Statistics
Error Statistics
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/errorsreport/data' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/reports/{reportId}/data
To get statistics for HTTP errors and failed assertions, use the masterId
and the /masters/{masterId}/reports/errorsreport/data
endpoint. Aggregated statistics are kept for HTTP errors, failed assertions, and failed embedded resources (embedded resources that returned non-200). Errors are HTTP status codes other than 200; however, if a request with status code 200 is still being displayed as an error, visit the article "Why are my HTTP 200 OK counted as errors?" to find out why.
The sample code returns statistics for items with a masterId
of 12345678
. Use the actual masterId
in place of 12345678
.
Error Statistics Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"labelId": "3b6d1bf098957debc57a9e6fc732460ebc922e77571812dda2edb21ea0c80492",
"errors": [],
"assertions": [],
"failedEmbeddedResources": [
{
"rc": "502",
"rm": "Bad Gateway",
"count": 1
}
],
"urls": [
{
"url": "https://unpkg.com/video.js/dist/video-js.css",
"count": 1
}
],
"name": "HTTP Request",
"_id": "HTTP Request"
},
{
"labelId": "945d56310dfa9763fee02e16874f50997d5e4ae6162e187e9ee80e50e6b7da15",
"errors": [],
"assertions": [
{
"name": "Response Assertion",
"failureMessage": "Response messaged did not contain \"Dummy\".",
"failures": 642
}
],
"failedEmbeddedResources": [],
"urls": [],
"name": "Dummy Sample Again",
"_id": "Dummy Sample Again"
},
{
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"errors": [
{
"rc": "401",
"m": "Unauthorized",
"count": 32
},
{
"rc": "500",
"m": "Internal Server Error",
"count": 644
},
{
"rc": "",
"m": "Number of samples in transaction : 3, number of failing samples : 1",
"count": 32
},
{
"rc": "401",
"m": "Number of samples in transaction : 3, number of failing samples : 1",
"count": 32
},
{
"rc": "404",
"m": "NOT FOUND",
"count": 643
}
],
"assertions": [
{
"name": "Response Assertion",
"failureMessage": "Response code did not contain a 200.",
"failures": 643
},
{
"name": "Response Assertion",
"failureMessage": "Response messaged did not contain \"Dummy\".",
"failures": 642
}
],
"failedEmbeddedResources": [
{
"rc": "502",
"rm": "Bad Gateway",
"count": 1
}
],
"urls": [
{
"url": "https://unpkg.com/video.js/dist/video-js.css",
"count": 1
}
],
"name": "ALL",
"_id": "ALL"
},
{
"labelId": "bf3c7ccb0a030c41fc714c6527397e95c1dc25cb4cb733d595c7a6b73f69b7b0",
"errors": [
{
"rc": "401",
"m": "Unauthorized",
"count": 32
}
],
"assertions": [],
"failedEmbeddedResources": [],
"urls": [],
"name": "Dummy Transaction 3",
"_id": "Dummy Transaction 3"
},
{
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"errors": [
{
"rc": "500",
"m": "Internal Server Error",
"count": 644
},
{
"rc": "404",
"m": "NOT FOUND",
"count": 643
}
],
"assertions": [
{
"name": "Response Assertion",
"failureMessage": "Response code did not contain a 200.",
"failures": 643
}
],
"failedEmbeddedResources": [],
"urls": [],
"name": "Dummy Sample",
"_id": "Dummy Sample"
},
{
"labelId": "38e581ab346d07c61d6b397b4f9e8900702394fad1ea53cda48ef55406abd26",
"errors": [
{
"rc": "401",
"m": "Number of samples in transaction : 3, number of failing samples : 1",
"count": 32
}
],
"assertions": [],
"failedEmbeddedResources": [],
"urls": [],
"name": "Transaction Controller 2",
"_id": "Transaction Controller 2"
},
{
"labelId": "56c57ad0f920b342b61c12749fccc72d3840e6c9335f1e516ac9cf4a9ba51111",
"errors": [
{
"rc": "",
"m": "Number of samples in transaction : 3, number of failing samples : 1",
"count": 33
}
],
"assertions": [],
"failedEmbeddedResources": [],
"urls": [],
"name": "Transaction Controller",
"_id": "Transaction Controller"
}
],
"request_id": "5ced9f9fd4a6d"
}
Attributes
-
labelId
stringread-only
The
labelId
of the label -
errors
arrayread-only
List of error details found for this label
-
rc
stringread-only
Response code (can be an empty string)
-
m
stringread-only
Response message returned
-
count
integerread-only
Number of errors generated with this response code and message
-
-
assertions
arrayread-only
List of assertion details found for this label
-
name
stringread-only
Assertion name (from JMeter script)
-
failureMessage
stringread-only
Assertion failure message (from JMeter script)
-
failures
integerread-only
Number of failures generated with this assertion name and message
-
-
failedEmbeddedResources
arrayread-only
List of failed embedded resources details for this lable
-
rc
stringread-only
Response code (can be an empty string)
-
rm
stringread-only
Response message returned
-
count
integerread-only
Number of errors generated with this response code and message
-
-
urls
arrayread-only
List of url details for this label
-
url
stringread-only
URL that generated an error
-
count
integerread-only
Number of errors the URL generated an error
-
-
name
stringread-only
Name of label that generated the errors
-
_id
stringread-only
Name of label that generated the errors
Thresholds Statistics
Get Threshold Statistics
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/thresholds' \
--user 'api_key_id:api_key_secret'
API Explorer: /masters/{masterId}/reports/{reportId}
To get statistics for test failure criteria you set, use the masterId
and the /masters/{masterId}/reports/thresholds
endpoint. You will find all the details of which criteria you set passed or failed and where (if any) those violations occurred.
The sample code returns threshold statistics for items with a masterId
of 12345678
. Use the actual masterId
in place of 12345678
. Also, to find out which labelId
goes with a specific label, you will need to use the APIs in either the High Level Masters Overview or Request Statistics sections.
Threshold Statistics Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"hash": "thresholds",
"name": "Thresholds",
"type": "Thresholds",
"source": "Thresholds",
"id": "thresholds",
"master_id": 12345678,
"dataUrl": "https://a.blazemeter.com/api/latest/masters/12345678/reports/thresholds/data",
"data": [
{
"id": "5ceda469b72dc531292b8804",
"field": "responseTime.percentile.90",
"ignoreRampupTime": 60,
"labelId": "aa66bf0097386e72c10315745ffed811ae2707b6d48b2fd05df9510615c71158",
"op": "gt",
"range": 60,
"stopTestOnViolation": false,
"success": true,
"threshold": 500,
"created": 1559077993,
"updated": 1559077993,
"masterId": 12345678,
"testId": 1234567,
"violations": []
},
{
"id": "5ceda469b72dc531292b8805",
"field": "responseTime.percentile.90",
"ignoreRampupTime": 60,
"labelId": "f5d6402c5aacbfa32134a0ad31fcc6de5300a9b3966264350bd462b19305ecbb",
"op": "gt",
"range": 60,
"stopTestOnViolation": false,
"success": false,
"threshold": 1000,
"created": 1559077993,
"updated": 1559078296,
"masterId": 12345678,
"testId": 1234567,
"violations": [
{
"from": 1559079012,
"to": 1559079072,
"value": 1967
},
{
"from": 1559079002,
"to": 1559079062,
"value": 1967
},
{
"from": 1559078992,
"to": 1559079052,
"value": 1967
},
{
"from": 1559078982,
"to": 1559079042,
"value": 1959
},
{
"from": 1559078982,
"to": 1559079042,
"value": 1959
},
{
"from": 1559078972,
"to": 1559079032,
"value": 1959
}
]
},
{
"id": "5ceda469b72dc531292b8806",
"field": "responseTime.percentile.90",
"ignoreRampupTime": 60,
"labelId": "883ced7ab4e8aecee91719becdbdb09916b34dcc1a5ba78a1c3453d4a2eb3006",
"op": "gt",
"range": 60,
"stopTestOnViolation": false,
"success": false,
"threshold": 4500,
"created": 1559077993,
"updated": 1559078296,
"masterId": 12345678,
"testId": 1234567,
"violations": [
{
"from": 1559079012,
"to": 1559079072,
"value": 4959
},
{
"from": 1559079002,
"to": 1559079062,
"value": 4959
},
{
"from": 1559078993,
"to": 1559079050,
"value": 4959
},
{
"from": 1559078983,
"to": 1559079041,
"value": 4959
},
{
"from": 1559078983,
"to": 1559079041,
"value": 4959
}
]
},
{
"id": "5ceda469b72dc531292b8807",
"field": "responseTime.percentile.90",
"ignoreRampupTime": 60,
"labelId": "9ed35d26cbb13b431002a72d1614138bbf2ec35afa0c834f82f2898372ed3b33",
"op": "gt",
"range": 60,
"stopTestOnViolation": false,
"success": false,
"threshold": 1000,
"created": 1559077993,
"updated": 1559078296,
"masterId": 12345678,
"testId": 1234567,
"violations": [
{
"from": 1559079013,
"to": 1559079072,
"value": 1095
},
{
"from": 1559079003,
"to": 1559079062,
"value": 1095
},
{
"from": 1559078993,
"to": 1559079052,
"value": 1095
},
{
"from": 1559078983,
"to": 1559079042,
"value": 1095
},
{
"from": 1559078983,
"to": 1559079042,
"value": 1095
},
{
"from": 1559078972,
"to": 1559079030,
"value": 1087
},
{
"from": 1559078962,
"to": 1559079022,
"value": 1087
},
{
"from": 1559078952,
"to": 1559079011,
"value": 1087
}
]
}
]
},
"request_id": "5ceda99113e15"
}
Attributes
-
hash
stringread-only
Is always
thresholds
-
name
stringread-only
Is always
Thresholds
-
type
stringread-only
Is always
Thresholds
-
source
stringread-only
Is always
Thresholds
-
id
stringread-only
Is always
thresholds
-
master_id
integerread-only
The
masterId
of the report -
dataUrl
stringread-only
The URL for the API that shows the KPI values for the data in the data attribute
-
data
arrayread-only
List of a data details regarding the various failure criteria set for this test run
-
id
stringread-only
The identifier of a failure criteria/threshold
-
field
stringread-only
The KPI being checked (i.e. Response time of 90th percentile)
-
ignoreRampupTime
integerread-only
If the "Ignore Rampup Time" option is turned on, this value will match the ramp-up time of the test in seconds
-
labelId
stringread-only
This will be the
labelId
of the label being checked -
op
stringread-only
The comparator of this criteria. Includes:
eq
(equal),gt
(greater than),lt
(less than),ne
(not equal) -
range
integerread-only
This will be
-1
if the "1-minute sliding window" is turned off. If "sliding window" is turned on, this will be60
-
stopTestOnViolation
booleanread-only
Denotes whether the test will stop upon violation of this criteria
-
success
booleanread-only
Denotes whether the failure criteria passed or failed
-
threshold
integerread-only
The threshold value that triggers a failure
-
created
integerread-only
The time the criteria was created. Denoted in UNIX Epoch Time
-
updated
integerread-only
The time the criteria was updated. Denoted in UNIX Epoch Time
-
masterId
integerread-only
The
masterId
of the test run -
testId
integerread-only
The
testId
of the test run -
violations
arrayread-only
List of violation details for this label
-
from
integerread-only
Start time of the 1 minute window where a violation occurred. Denoted in UNIX Epoch Time
-
to
integerread-only
End time of the 1 minute windo where a violation occurred. Denoted in UNIX Epoch Time
-
value
integerread-only
The value that was measured (i.e. 90th percentile response time in ms)
-
-
Time-Series Data
To draw graphs of key performance indicators (KPIs), first determine which KPIs are available and then retrieve the details for each KPI.
Determine Available KPIs
Determine Available KPIs
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/timeline/kpis' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"name": "March_04_3:11 PM - Multi Test",
"id": 12345678,
"children": [
{
"id": "Virtual Users",
"name": "Virtual Users",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/na/avg",
"name": "Users",
"yAxis": "users",
"fillOpacity": 0.10000000000000001,
"type": "area",
"availableStatistics": [
"avg"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/na/avg",
"name": "Users",
"yAxis": "users",
"fillOpacity": 0.10000000000000001,
"type": "area",
"availableStatistics": [
"avg"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/na/avg",
"name": "Users",
"yAxis": "users",
"fillOpacity": 0.10000000000000001,
"type": "area",
"availableStatistics": [
"avg"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/na/avg",
"name": "Users",
"yAxis": "users",
"fillOpacity": 0.10000000000000001,
"type": "area",
"availableStatistics": [
"avg"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/na/avg",
"name": "Users",
"yAxis": "users",
"fillOpacity": 0.10000000000000001,
"type": "area",
"availableStatistics": [
"avg"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Hits",
"name": "Hits",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/n/avg",
"name": "Hit/s Total",
"availableStatistics": [
"avg"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/n/avg",
"name": "Hit/s Total",
"availableStatistics": [
"avg"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/n/avg",
"name": "Hit/s Total",
"availableStatistics": [
"avg"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/n/avg",
"name": "Hit/s Total",
"availableStatistics": [
"avg"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/n/avg",
"name": "Hit/s Total",
"availableStatistics": [
"avg"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Errors",
"name": "Errors",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/ec/avg",
"name": "Hit/s Errors",
"availableStatistics": [
"avg"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/ec/avg",
"name": "Hit/s Errors",
"availableStatistics": [
"avg"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/ec/avg",
"name": "Hit/s Errors",
"availableStatistics": [
"avg"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/ec/avg",
"name": "Hit/s Errors",
"availableStatistics": [
"avg"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/ec/avg",
"name": "Hit/s Errors",
"availableStatistics": [
"avg"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Response Time",
"name": "Response Time",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/t",
"name": "Response Time",
"yAxis": "time",
"availableStatistics": [
"avg",
"min",
"max",
"pec50",
"pec90",
"pec95",
"pec99"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/t",
"name": "Response Time",
"yAxis": "time",
"availableStatistics": [
"avg",
"min",
"max",
"pec50",
"pec90",
"pec95",
"pec99"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/t",
"name": "Response Time",
"yAxis": "time",
"availableStatistics": [
"avg",
"min",
"max",
"pec50",
"pec90",
"pec95",
"pec99"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/t",
"name": "Response Time",
"yAxis": "time",
"availableStatistics": [
"avg",
"min",
"max",
"pec50",
"pec90",
"pec95",
"pec99"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/t",
"name": "Response Time",
"yAxis": "time",
"availableStatistics": [
"avg",
"min",
"max",
"pec50",
"pec90",
"pec95",
"pec99"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Latency Time",
"name": "Latency Time",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/lt",
"name": "Latency Time",
"yAxis": "time",
"availableStatistics": [
"avg"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/lt",
"name": "Latency Time",
"yAxis": "time",
"availableStatistics": [
"avg"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/lt",
"name": "Latency Time",
"yAxis": "time",
"availableStatistics": [
"avg"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/lt",
"name": "Latency Time",
"yAxis": "time",
"availableStatistics": [
"avg"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/lt",
"name": "Latency Time",
"yAxis": "time",
"availableStatistics": [
"avg"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Bytes",
"name": "Bytes",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/by",
"name": "Bytes/s",
"availableStatistics": [
"avg"
],
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/by",
"name": "Bytes/s",
"availableStatistics": [
"avg"
],
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/by",
"name": "Bytes/s",
"availableStatistics": [
"avg"
],
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/by",
"name": "Bytes/s",
"availableStatistics": [
"avg"
],
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/by",
"name": "Bytes/s",
"availableStatistics": [
"avg"
],
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
}
]
},
{
"id": "Response Codes",
"name": "Response Codes",
"children": [
{
"id": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"name": "ALL",
"children": [
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/rc/200",
"name": "200",
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
},
{
"id": "label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/rc/404",
"name": "404",
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7"
}
]
},
{
"id": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58",
"name": "bzm - Parallel Controller Dummy",
"children": [
{
"id": "label/17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58/rc/200",
"name": "200",
"labelId": "17477542f8114333b731b111206fa6a2cb560645f62f48b74e7a2768d933cb58"
}
]
},
{
"id": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"name": "Dummy Sample",
"children": [
{
"id": "label/6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5/rc/200",
"name": "200",
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5"
}
]
},
{
"id": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"name": "Dummy Sample Error",
"children": [
{
"id": "label/4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e/rc/404",
"name": "404",
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e"
}
]
},
{
"id": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201",
"name": "Dummy Sample Success",
"children": [
{
"id": "label/6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201/rc/200",
"name": "200",
"labelId": "6b7fa6973e0e41304cd0343664ab1def48ed9e12b2989dfd18b123d14c5b1201"
}
]
}
]
}
]
}
}
API Explorer: /masters/{masterId}/reports/timeline/kpis
To retrieve a list containing available key performance indicators (KPIs), use the masterId
and the /masters/{masterId}/reports/timeline/kpis
endpoint. The sample code returns available KPIs for a masterId
of 12345678
. Use the masterId
of the actual test run in place of the 12345678
.
The response starts with a result
that contains the test name. Under that are nested children
, starting with the available KPIs (for example, Virtual Users
, Hits
, Errors
, and so on). Within each child is another nested set of children
listing the labels available.
Within the children
listing, you will find an id
for each label. This is the labelId
of the label and will be needed for querying a specific label in Retrieve Time-Series Details.
Retrieve Time-Series Details
Retrieve Time-Series Details for 60 Second Intervals
curl 'https://a.blazemeter.com/api/v4/masters/12345678/kpi-values?id=label%2Fb5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7%2Fna%2Favg&interval=60' \
-H 'Accept: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"labelName": "ALL",
"label": "ALL",
"kpis": [
{
"n": 4050,
"na": 49,
"ts": 1551801900,
"t_min": 50,
"t_max": 647,
"t_avg": 124.12148148148148,
"t_pec50": 83,
"t_pec90": 109,
"t_pec95": 611,
"t_pec99": 611,
"lt_avg": 23.630123456790123,
"by_avg": 123.48592592592593,
"n_avg": 67.5,
"ct_avg": 2.7385185185185184,
"ec_avg": 25.583333333333332,
"ec": 1535
},
{
"n": 12385,
"na": 60,
"ts": 1551801960,
"t_min": 50,
"t_max": 615,
"t_avg": 125.49882922890593,
"t_pec50": 84,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.442551473556723,
"by_avg": 123.75696406943884,
"n_avg": 206.41666666666666,
"ct_avg": 2.7489705288655633,
"ec_avg": 78.13333333333334,
"ec": 4688
},
{
"n": 12627,
"na": 60,
"ts": 1551802020,
"t_min": 50,
"t_max": 615,
"t_avg": 125.60932921517383,
"t_pec50": 84,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.288429555713947,
"by_avg": 123.7776193870278,
"n_avg": 210.44999999999999,
"ct_avg": 2.7457828462817773,
"ec_avg": 79.716666666666669,
"ec": 4783
},
{
"n": 12645,
"na": 60,
"ts": 1551802080,
"t_min": 50,
"t_max": 611,
"t_avg": 125.34045077105576,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.288177145116649,
"by_avg": 123.76370106761566,
"n_avg": 210.75,
"ct_avg": 2.7379201265322264,
"ec_avg": 79.799999999999997,
"ec": 4788
},
{
"n": 12658,
"na": 60,
"ts": 1551802140,
"t_min": 50,
"t_max": 611,
"t_avg": 125.13690946437036,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.211802812450625,
"by_avg": 123.75367356612419,
"n_avg": 210.96666666666667,
"ct_avg": 2.754147574656344,
"ec_avg": 79.966666666666669,
"ec": 4798
},
{
"n": 12678,
"na": 60,
"ts": 1551802200,
"t_min": 50,
"t_max": 611,
"t_avg": 124.95070200347058,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.404716832307933,
"by_avg": 123.74727875059158,
"n_avg": 211.30000000000001,
"ct_avg": 2.7487774096860704,
"ec_avg": 80.083333333333329,
"ec": 4805
},
{
"n": 12644,
"na": 60,
"ts": 1551802260,
"t_min": 50,
"t_max": 615,
"t_avg": 125.45460297374248,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.288516292312558,
"by_avg": 123.77348940208795,
"n_avg": 210.73333333333332,
"ct_avg": 2.7444637772856693,
"ec_avg": 79.799999999999997,
"ec": 4788
},
{
"n": 12633,
"na": 60,
"ts": 1551802320,
"t_min": 50,
"t_max": 615,
"t_avg": 125.50542230665717,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.31647273015119,
"by_avg": 123.77297554025172,
"n_avg": 210.55000000000001,
"ct_avg": 2.7417082244914113,
"ec_avg": 79.733333333333334,
"ec": 4784
},
{
"n": 12654,
"na": 60,
"ts": 1551802380,
"t_min": 50,
"t_max": 611,
"t_avg": 125.33783783783784,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.344792160581633,
"by_avg": 123.76576576576576,
"n_avg": 210.90000000000001,
"ct_avg": 2.7485380116959064,
"ec_avg": 79.916666666666671,
"ec": 4795
},
{
"n": 12639,
"na": 60,
"ts": 1551802440,
"t_min": 50,
"t_max": 611,
"t_avg": 125.45035208481684,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.416488646253658,
"by_avg": 123.77735580346547,
"n_avg": 210.65000000000001,
"ct_avg": 2.7456286098583749,
"ec_avg": 79.75,
"ec": 4785
},
{
"n": 12672,
"na": 60,
"ts": 1551802500,
"t_min": 50,
"t_max": 615,
"t_avg": 124.9704071969697,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.343039772727273,
"by_avg": 123.73390151515152,
"n_avg": 211.19999999999999,
"ct_avg": 2.7489741161616164,
"ec_avg": 80.066666666666663,
"ec": 4804
},
{
"n": 12633,
"na": 60,
"ts": 1551802560,
"t_min": 50,
"t_max": 615,
"t_avg": 125.55608327396502,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.327159027942688,
"by_avg": 123.78199952505344,
"n_avg": 210.55000000000001,
"ct_avg": 2.7436080107654557,
"ec_avg": 79.733333333333334,
"ec": 4784
},
{
"n": 12620,
"na": 60,
"ts": 1551802620,
"t_min": 50,
"t_max": 615,
"t_avg": 125.67812995245642,
"t_pec50": 84,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.339619651347068,
"by_avg": 123.78304278922346,
"n_avg": 210.33333333333334,
"ct_avg": 2.739540412044374,
"ec_avg": 79.63333333333334,
"ec": 4778
},
{
"n": 12635,
"na": 60,
"ts": 1551802680,
"t_min": 50,
"t_max": 611,
"t_avg": 125.55425405619312,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.330035615354173,
"by_avg": 123.78947368421052,
"n_avg": 210.58333333333334,
"ct_avg": 2.73597150771666,
"ec_avg": 79.683333333333337,
"ec": 4781
},
{
"n": 12647,
"na": 60,
"ts": 1551802740,
"t_min": 50,
"t_max": 615,
"t_avg": 125.38491341820195,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.281252470941727,
"by_avg": 123.77117102870245,
"n_avg": 210.78333333333333,
"ct_avg": 2.7409662370522652,
"ec_avg": 79.833333333333329,
"ec": 4790
},
{
"n": 12629,
"na": 60,
"ts": 1551802800,
"t_min": 50,
"t_max": 611,
"t_avg": 125.57803468208093,
"t_pec50": 84,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.519043471375404,
"by_avg": 123.77607094781851,
"n_avg": 210.48333333333332,
"ct_avg": 2.7231768152664504,
"ec_avg": 79.700000000000003,
"ec": 4782
},
{
"n": 12645,
"na": 60,
"ts": 1551802860,
"t_min": 50,
"t_max": 615,
"t_avg": 125.40395413206801,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.432344800316329,
"by_avg": 123.77271648873072,
"n_avg": 210.75,
"ct_avg": 2.7523131672597865,
"ec_avg": 79.849999999999994,
"ec": 4791
},
{
"n": 12658,
"na": 60,
"ts": 1551802920,
"t_min": 50,
"t_max": 611,
"t_avg": 125.13722547005847,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.154210775793963,
"by_avg": 123.75367356612419,
"n_avg": 210.96666666666667,
"ct_avg": 2.7559646073629325,
"ec_avg": 79.933333333333337,
"ec": 4796
},
{
"n": 12642,
"na": 60,
"ts": 1551802980,
"t_min": 50,
"t_max": 611,
"t_avg": 125.38071507672836,
"t_pec50": 84,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.273849074513528,
"by_avg": 123.75700047460845,
"n_avg": 210.69999999999999,
"ct_avg": 2.7387280493592785,
"ec_avg": 79.816666666666663,
"ec": 4789
},
{
"n": 12653,
"na": 60,
"ts": 1551803040,
"t_min": 50,
"t_max": 611,
"t_avg": 125.43183434758555,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.41602781948945,
"by_avg": 123.78455702205011,
"n_avg": 210.88333333333333,
"ct_avg": 2.7469374851813799,
"ec_avg": 79.849999999999994,
"ec": 4791
},
{
"n": 2566,
"na": 60,
"ts": 1551803100,
"t_min": 50,
"t_max": 611,
"t_avg": 129.64068589243959,
"t_pec50": 83,
"t_pec90": 110,
"t_pec95": 607,
"t_pec99": 611,
"lt_avg": 23.415042868277474,
"by_avg": 124.70693686671864,
"n_avg": 42.766666666666666,
"ct_avg": 2.7127825409197195,
"ec_avg": 16,
"ec": 960
}
],
"requestedKpi": "na"
}
]
}
API Explorer: /masters/{masterId}/kpi-values
To retrieve time-series details, use the masterId
, the KPI values, and the /masters/{masterId}/kpi-values
endpoint with the following query parameters. The sample code returns time-series details for a masterId
of 12345678
for the determined available KPI label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/na/avg
. Use the actual masterId
in place of the 12345678
and the determined KPI in place of the label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/na/avg
. See the KPI Values Query Parameters for more details on how to setup the parameters for this API.
The response starts with a result that contains the label Id and Name, at minimum. Under that is an array of objects, listing the KPI values in intervals of one second at minimum. No matter which metric is requested, the response will always display n
, na
, and ts
. ts
is the timestamp, in seconds, given in UNIX Epoch time. Visit this Epoch and Unix Timestamp Converter Tool to convert between the timestamp and human readable dates.
KPI Values Query Parameters
Attributes
-
id
stringrequired
This parameter is a concatenation (see Concatenation for ID)
-
interval
integerrequired
The granularity (in seconds) of aggregation. Default is
1
second, which can generate a very large data set, so consider using a larger interval. The only supported granularities are1
,10
, and60
seconds
Concatenation for ID
For this parameter, you need to build the parameter label/labelId/kpi/statistic
:
label
: The stringlabel
labelId
: Use the KPI identified from the retrieved KPIs endpoint resultkpi
: As described by Legend for KPIsstatistic
: As described by Legend for Statistics
For example: id=label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/na/avg
Response Code 200 Example: id=label/b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7/rc/200
This must be url-encoded for it to run. The /
is %2F
when url-encoded, so the following example is how it would look when included in the API:
id=label%2Fb5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7%2Fna%2Favg
Legend for KPIs
Attribute | Description | Supported Statistics |
---|---|---|
n |
Hits | avg |
na |
Active Users | avg |
ec |
Errors (error count) | avg |
t |
Response time | avg , min , max , pec50 , pec90 , pec95 , pec99 |
lt |
Latency | avg |
by |
Bytes | avg |
rc |
Response code | xxx |
Legend for Statistics
Attribute | Description | Supported KPIs |
---|---|---|
avg |
Average | n , na , ec , t , lt , by |
min |
Minimum | t |
max |
Maximum | t |
pec50 |
Median | t |
pec90 |
90% Max Response | t |
pec95 |
95% Max Response | t |
pec99 |
99% Max Response | t |
xxx |
Response Code xxx | rc |
Inject Custom Time Series Data
Inject Custom Time Series Data
curl 'https://a.blazemeter.com/api/v4/data/timeseries' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"intervals": [{"_id": {"masterId": 12345678,"metricPath": "Lion King|Simba","ts": 1518429953},"kpis": [{"value": 300,"ts": 1518429953}],"profileName": "Movies"},{"_id": {"masterId": 12345678,"metricPath": "Lion King|Mufasa","ts": 1518429953},"kpis": [{"value": 200,"ts": 1518429953}],"profileName": "Movies"},{"_id": {"masterId": 12345678,"metricPath": "The Little Mermaid|Ariel","ts": 1518429953},"kpis": [{"value": 743,"ts": 1518429953}],"profileName": "Movies"},{"_id": {"masterId": 12345678,"metricPath": "The Little Mermaid|Ursula","ts": 1518429953},"kpis": [{"value": 40,"ts": 1518429953}],"profileName": "Movies"}]}'
API Explorer: /data/timeseries
You can inject your own time-series data into the test results in real time or after the test. Once injected, the data will appear in the Timeline Report in the BlazeMeter UI and be available for retrieval via the API just like any other time-series data in the test results.
The example provided adds new KPIs Lion King|Simba
, Lion King|Mufasa
, The Little Mermaid|Ariel
, and The Little Mermaid|Ursula
to the masterId
of 12345678
under the profileName
of Movies
.
The kpis
array only contains a single data point for each KPI above, but you can add as many of these as necessary to add that data to your Timeline Report (up to 1 second intervals). The same is true for the meterPath
values (as it is in the intervals
array), as you can add as many of these as you need. When using this API, replace the masterId
of 12345678
with your id, the metricPath
values with the ones that describe the KPI data you are passing, and the profileName
of Movies
to your preferred name.
Inject Custom Time Series Attributes
Inject Custom Time Series Data Inject Custom Time Series Data POST (JSON)
{
"intervals": [
{
"_id": {
"masterId": 12345678,
"metricPath": "Lion King|Simba",
"ts": 1518429953
},
"kpis": [
{
"value": 300,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "Lion King|Mufasa",
"ts": 1518429953
},
"kpis": [
{
"value": 200,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "The Little Mermaid|Ariel",
"ts": 1518429953
},
"kpis": [
{
"value": 743,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "The Little Mermaid|Ursula",
"ts": 1518429953
},
"kpis": [
{
"value": 40,
"ts": 1518429953
}
],
"profileName": "Movies"
}
]
}
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
[
{
"_id": {
"masterId": 12345678,
"metricPath": "Lion King|Simba",
"ts": 1518429953
},
"kpis": [
{
"value": 300,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "Lion King|Mufasa",
"ts": 1518429953
},
"kpis": [
{
"value": 200,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "The Little Mermaid|Ariel",
"ts": 1518429953
},
"kpis": [
{
"value": 743,
"ts": 1518429953
}
],
"profileName": "Movies"
},
{
"_id": {
"masterId": 12345678,
"metricPath": "The Little Mermaid|Ursula",
"ts": 1518429953
},
"kpis": [
{
"value": 40,
"ts": 1518429953
}
],
"profileName": "Movies"
}
]
]
}
Attributes
-
intervals
arrayList of interval metric and KPI details to be loaded to the timeline report
-
_id
objectThe master and metric details for this time series data
-
masterId
integerrequired
The
masterId
you want to inject the KPI date into. Only one master for all the intervals (one master for request) is supported -
metricPath
stringrequired
The path in the profile tree, separated by pipes (
|
), for example:title_1|title_2|title_3
-
ts
integerrequired
The timestamp of the metric (in Epoch Time)
-
-
kpis
arrayThe KPI details for this specific time-series entry
-
value
integerrequired
Value of KPI
-
ts
integerrequired
Timestamp of the KPI (in Epoch Time)
-
-
profileName
stringrequired
Name of the profile to associate the KPI value with
-
Retrieve Logs
Retrieve Logs
curl 'https://a.blazemeter.com/api/v4/sessions/r-v4-5c7e9d133be89/reports/logs' \
--user 'api_key_id:api_key_secret'
API Explorer: /sessions/{sessionId}/reports/{reportId}
To get high level summary statistics, use the sessionId
and /sessions/{sessionId}/reports/logs
endpoint. The sample code returns the logs created for the sessionId
of r-v4-5c7e9d133be89
. Use the sessionId
of the actual test run in place of r-v4-5c7e9d133be89
.
The response contains an array that contains the full list of files genearated by the session.
Retrieve Logs Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"hash": "logs",
"name": "Logs",
"type": "Logs",
"source": "",
"id": "logs",
"session_id": "r-v4-5c7e9d133be89",
"dataUrl": "https://a.blazemeter.com/api/latest/sessions/r-v4-5c7e9d133be89/reports/logs/data",
"data": [
{
"title": "artifacts",
"filename": "artifacts.zip",
"dataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/artifacts.zip?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=928903b613480cda069598e416f22e664bcb4116003602bb9470ced84bcbdc0c",
"tailDataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/artifacts.zip.tail.bz?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=4b3c38421f36312dea37d8380754d3eb644a46344d476b482ecb45f2d890ee0e"
},
{
"title": "bzt",
"filename": "bzt.log",
"dataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/bzt.log?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=2d80eca93463d3b2babcc33058c40b9b8cc9b702aec53ae9362bc634f4cdd5f4",
"tailDataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/bzt.log.tail.bz?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=5e83398f924d68a624d147decad04ad2c56da9b59b30f8fa128e7bb4968ed583"
},
{
"title": "cloud-launcher",
"filename": "cloud-launcher.log",
"dataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/cloud-launcher.log?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=a96af0770b482e8aedd8d08bb8a9b27cfcf3182c154f1353bea87d3f990dc050",
"tailDataUrl": false
},
{
"title": "jmeter",
"filename": "jmeter.log",
"dataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/jmeter.log?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=7b38f5a0c810edc8f68233b88dc92dd297b41455a9d26db259bdcc89ca42a4ca",
"tailDataUrl": "https://storage.blazemeter.com/blazemeter-gcp/masters/30792192/sessions/r-v4-5f50ecd1568ef/jmeter.log.tail.bz?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200903%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200903T201721Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=a9f63eb3f76f79f822e85ac4253fa4001ef34a127d0e7c92daf9c0976b38f0e4"
}
],
"location": "us-east4-a",
"locationId": "us-east4-a",
"overrideLocationId": null
}
}
Attributes
-
hash
stringAlways will be
logs
-
name
stringAlways will be
Logs
-
type
stringAlways will be
Logs
-
id
stringAlways will be
logs
-
session_id
stringThe
sessionId
these logs refer to -
dataUrl
stringThe data URL for this API, which contains just the information provided in the
data
attribute -
data
arrayThe list of logs and files created by this test
-
title
stringThe name of the file (without the extension)
-
filename
stringThe filename of the file
-
dataUrl
stringThe link to the file. This link remains active for 20 minutes
-
tailDataUrl
stringThe URL of the tail data for the file. If this does not exist for a specific file, it will return
false
-
-
location
stringThe location id the session was run in
-
locationId
stringThe location id the session was run in
Test Results Advanced Settings
For the Summary Statistics, Requests Statistics, Error Statistics, Threshold Statistics and Time-Series Data you have options to narrow down the view of data to 1 or more scenarios, 1 or more locations, and/or a time range.
Test Results By Scenario
Get Request Stats Data By Scenario
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/aggregatereport/data?scenarios[]=f7cebdaa474a27fc93dcff0fd3d97bd116c1f867a6f17639f0fc197eec1f4e5a' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"avgBytes": 3.5939999999999999,
"avgLatency": 25.615478098981228,
"avgResponseTime": 105.14469669545431,
"avgThroughput": 32.28213689482471,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"labelName": "ALL",
"90line": 110,
"95line": 110,
"99line": 111,
"maxResponseTime": 117,
"medianResponseTime": 105,
"minResponseTime": 100,
"samples": 38674,
"stDev": 3.1836156424647122,
"concurrency": 20
},
{
"avgBytes": 3.5939999999999999,
"avgLatency": 25.615478098981228,
"avgResponseTime": 105.14469669545431,
"avgThroughput": 32.28213689482471,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"labelName": "Dummy Sample",
"90line": 110,
"95line": 110,
"99line": 111,
"maxResponseTime": 117,
"medianResponseTime": 105,
"minResponseTime": 100,
"samples": 38674,
"stDev": 3.1836156424647122,
"concurrency": 20
}
]
}
To narrow down the data based on a given scenario, you will want to include the scenarios[]
parameter for the scenario (or scenarios) you are interested in. This will require you to gather the scenarioId
by using the High Level Overview API (you will need a masterId
) or from Start a Test API response (you will need a testId
).
Test Results by Location
Get Request Stats Data by Location
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/aggregatereport/data?locations[]=us-east-1' \
-H 'Accept: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"avgBytes": 3.5939999999999999,
"avgLatency": 25.615478098981228,
"avgResponseTime": 105.14469669545431,
"avgThroughput": 32.28213689482471,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"labelName": "ALL",
"90line": 110,
"95line": 110,
"99line": 111,
"maxResponseTime": 117,
"medianResponseTime": 105,
"minResponseTime": 100,
"samples": 38674,
"stDev": 3.1836156424647122,
"concurrency": 20
},
{
"avgBytes": 3.5939999999999999,
"avgLatency": 25.615478098981228,
"avgResponseTime": 105.14469669545431,
"avgThroughput": 32.28213689482471,
"duration": 1198,
"errorsCount": 0,
"errorsRate": 0,
"geoMeanResponseTime": null,
"hasLabelPassedThresholds": null,
"labelId": "6cd7cac6b9903c94dbea09b9973066d5f36c6e1de2cd06c91c853afcd56faff5",
"labelName": "Dummy Sample",
"90line": 110,
"95line": 110,
"99line": 111,
"maxResponseTime": 117,
"medianResponseTime": 105,
"minResponseTime": 100,
"samples": 38674,
"stDev": 3.1836156424647122,
"concurrency": 20
}
]
}
To narrow down the data based on a given location, you will want to include the locations[]
parameter for the location (or locations) you are interested in. This will require you to gather the location Id
by using the High Level Overview API (you will need a masterId
) or from Start a Test API response (which requires a testId
).
Test Results by Time Range
Get Request Stats Data by Time Range
curl 'https://a.blazemeter.com/api/v4/masters/12345678/reports/aggregatereport/data?from=1551801954&to=1551802158' \
-H 'Accept: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"labelId": "4aea54d655e1ea0a0120da7e43da365c7581482cceaa0ad4c53574e14ecbc39e",
"errors": [
{
"rc": "404",
"m": "NOT FOUND",
"count": 19057
}
],
"assertions": [],
"failedEmbeddedResources": [],
"urls": [],
"name": "Dummy Sample Error",
"_id": "Dummy Sample Error"
},
{
"labelId": "b5c7aed7cd2a308523e7d2847b7815909e864b2fd9c4ea88b00d35adb2ecdfd7",
"errors": [
{
"rc": "404",
"m": "NOT FOUND",
"count": 19057
}
],
"assertions": [],
"failedEmbeddedResources": [],
"urls": [],
"name": "ALL",
"_id": "ALL"
}
]
}
To narrow down the data based on a given time range, you will want to include the to
and from
parameters for the time range (using Epoch time) you are interested in. This will require you to know get the start and stop times (in Epoch) by using the Summary Statistics API (you will need a masterId
).
Shared Folders
If you have files that are used across multiple tests, then using shared folders will reduce the need to re-upload files every time. For more information on what shared folders are and when to use them, you can visit the Uploading Files to Shared Folders.
The Folder Object
The Folder Object
{
"api_version": 4,
"error": null,
"result": {
"id": "5b7dc9c6c7dc9739167b23c8",
"name": "ApiTest",
"deleable": false,
"created": 1534970310,
"workspaceId": 123429,
"files": [
{
"lastModified": 1588606663,
"name": "Dummy.jmx",
"size": 18111,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/Dummy.jmx?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=677733c18cf94be0268b77d8f1d78108eb355433cc164c41872f3876ab141c41",
"linkExpire": 1593031685
},
{
"lastModified": 1585685174,
"name": "colors.csv",
"size": 286,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/colors.csv?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=544b16e12b730fb4d76e1946a595cec4100bd3f47957358f8696283cf7df4e21",
"linkExpire": 1593031685
},
{
"lastModified": 1585685142,
"name": "hello.txt",
"size": 192,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/hello.txt?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=1d357c42ccbd5a05abff31528dc3ac78a9c40fba8e7bfcad67782363d152d06f",
"linkExpire": 1593031685
}
]
},
"request_id": "5ef26a85751d4"
}
Attributes
-
id
stringread-only
The
folderId
for the shared folder -
name
stringrequired
read-only
The name of the shared folder.
name
cannot be changed after the folder is created -
deletable
booleanDenotes if the files within the shared folder are deletable or not.
true
- Files can be deletedfalse
- Files cannot be deleted -
created
integerread-only
Timestamp when the shared folder was created
-
workspaceId
integerrequired
read-only
The
workspaceId
the shared folder is associated to.workspaceId
cannot be changed after the folder is created -
files
arrayread-only
The list of files stored in the shared folder
-
lastModified
integerread-only
The timestamp of when the file was last modified
-
name
stringread-only
The name of the file
-
size
integerread-only
The size (in bytes) of the file
-
link
stringread-only
The link to download the file from the shared folder. This link remains active for 20 minutes
-
linkExpire
integerread-only
The timestamp of when the
link
will expire
-
Create a Shared Folder
Create a Shared Folder
curl 'https://a.blazemeter.com/api/v4/folders' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"New_folder","workspaceId":123456}'
API Explorer: /folders
To create a shared folder:
- Create the folder object with a POST to the folders endpoint (see sample code).
- Capture the
folderId
returned asid
from the response. - Upload files (such as scripts, data files or YAML Taurus configuration files) by using the
folderId
and the code explained in the Upload or Update Files to Shared Folder section.
Create a Shared Folder Request Attributes
Create a Shared Folder Create a Shared Folder POST Body (JSON)
{
"name": "New_folder",
"workspaceId": 123456
}
Attributes
-
name
stringrequired
The name of the shared folder. Name can ONLY include letters, numbers and underscores
-
workspaceId
integerrequired
The
workspaceId
to tie the shared folder to
Create a Shared Folder Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5ef276272e71f800b53bfa95",
"name": "New_folder",
"deletable": true,
"hidden": false,
"created": 1592948263,
"workspaceId": 123456
},
"request_id": "5ef27626deeb2"
}
To see a breakdown of the attributes, please see The Folder Object section.
List Shared Folders
List Shared Folders
curl 'https://a.blazemeter.com/api/v4/folders?workspaceId=123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /folders
To get the list of shared folders, you will need the workspaceId
for where the shared folder is held. The example code on the right returns the list of the first 10 folders in workspace 123456
. The id
in the response contains the folderId
of the shared folder, which you will need to upload files to that shared folder.
List Shared Folders Parameters
Parameters
-
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of shared folders from
Also see: Pagination and Sorting
List Shared Folders Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 12,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5b7dc9c6c7dc9739167b23c8",
"name": "ApiTest",
"created": 1534970310,
"workspaceId": 123429
},
{
"id": "58e29fd7ca293bbb5c05776f",
"name": "Data",
"created": 1491247063,
"workspaceId": 123429
},
{
"id": "5b44cdc346f49fcf707b23cb",
"name": "IncludeController",
"created": 1531235779,
"workspaceId": 123429
},
{
"id": "5af99e54014f377771e48270",
"name": "JAR_Files",
"created": 1526308436,
"workspaceId": 123429
},
{
"id": "5aba6168e2c1af58757b251b",
"name": "Selenium",
"created": 1522164072,
"workspaceId": 123429
},
{
"id": "594bfc8f67f3bf98257b23ce",
"name": "TCMS_Data",
"created": 1498152079,
"workspaceId": 123429
},
{
"id": "5af06f1d014f371f2b7b23c7",
"name": "TaurusV4",
"created": 1525706525,
"workspaceId": 123429
},
{
"id": "58e29fceaf1098fb3e185c11",
"name": "Test",
"created": 1491247054,
"workspaceId": 123429
},
{
"id": "5a023e063d71f4060b214518",
"name": "TestAPI",
"created": 1510096390,
"workspaceId": 123429
},
{
"id": "5b96c41fad67294528f03df8",
"name": "TestDeleteFiles",
"created": 1536607263,
"workspaceId": 123429
}
]
}
To see a breakdown of the attributes, please see The Folder Object section.
Shared Folder Details
Shared Folder Details
curl 'https://a.blazemeter.com/api/v4/folders/5b96c41fad67294528f03df8' \
--user 'api_key_id:api_key_secret'
API Explorer: /folders/{folderId}
To get the details of a shared folder, you will need the folderId
. The example code on the right returns the details of the shared folder with the folderId
of 5b96c41fad67294528f03df8
. Use the actual ID value for the shared folder to return the details of that shared folder.
Shared Folder Details Parameters
Parameters
-
filename
stringNarrows the list to files that contain this string
Shared Folder Details Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 12,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5b7dc9c6c7dc9739167b23c8",
"name": "ApiTest",
"created": 1534970310,
"workspaceId": 123429
},
{
"id": "58e29fd7ca293bbb5c05776f",
"name": "Data",
"created": 1491247063,
"workspaceId": 123429
},
{
"id": "5b44cdc346f49fcf707b23cb",
"name": "IncludeController",
"created": 1531235779,
"workspaceId": 123429
},
{
"id": "5af99e54014f377771e48270",
"name": "JAR_Files",
"created": 1526308436,
"workspaceId": 123429
},
{
"id": "5aba6168e2c1af58757b251b",
"name": "Selenium",
"created": 1522164072,
"workspaceId": 123429
},
{
"id": "594bfc8f67f3bf98257b23ce",
"name": "TCMS_Data",
"created": 1498152079,
"workspaceId": 123429
},
{
"id": "5af06f1d014f371f2b7b23c7",
"name": "TaurusV4",
"created": 1525706525,
"workspaceId": 123429
},
{
"id": "58e29fceaf1098fb3e185c11",
"name": "Test",
"created": 1491247054,
"workspaceId": 123429
},
{
"id": "5a023e063d71f4060b214518",
"name": "TestAPI",
"created": 1510096390,
"workspaceId": 123429
},
{
"id": "5b96c41fad67294528f03df8",
"name": "TestDeleteFiles",
"created": 1536607263,
"workspaceId": 123429
}
]
}
To see a breakdown of the attributes, please see The Folder Object section.
Update a Shared Folder
Update a Shared Folder
curl 'https://a.blazemeter.com/api/v4/folders/5b96c41fad67294528f03df8' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"folderId":"5b7dc9c6c7dc9739167b23c8","data":{"deletable":true}}'
API Explorer: /folders/{folderId}
To update a shared folder, you need to know the folderId
. The sample code updates a shared folder with an ID of 5b96c41fad67294528f03df8
to make the files in the shared folder deletable. Use the actual ID value for the shared folder to update it.
Update a Shared Folder Request Attributes
Update a Shared Folder Update a Shared Folder PATCH Body (JSON)
{
"folderId": "5b7dc9c6c7dc9739167b23c8",
"data": {
"deletable": true
}
}
Attributes
-
folderId
booleanrequired
The
folderId
of the folder being updated. Must match thefolderId
from the URL -
data
objectrequired
The data details to be updated in the shared folder
-
deletable
booleanrequired
Denotes if the files within the shared folder are deletable or not.
true
- Files can be deletedfalse
- Files cannot be deleted
-
Update a Shared Folder Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": "5b7dc9c6c7dc9739167b23c8",
"name": "ApiTest",
"deletable": true,
"created": 1534970310
},
"request_id": "5ef2700d7c817"
}
To see a breakdown of the attributes, please see The Folder Object section.
Upload or Update Files to Shared Folder
To upload or update an asset file, first get a signed URL, and then use it to upload the file.
If you are a private cloud user, please see this link for the steps for uploading data files to a shared folder.
Get Signed URL for Folder
Upload or Update Files to Shared Folder Get Signed URL for Folder
curl 'https://a.blazemeter.com/api/v4/folders/5b7dc9c6c7dc9739167b23c8/s3/sign?fileName=colors.csv' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": "https://blazemeter.s3.amazonaws.com/organizations/123429/shared/ApiTest/colors.csv?x-amz-acl=private&x-amz-server-side-encryption=AES256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJPZOF6U7I33QK2CQ%2F20190309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190309T154412Z&X-Amz-SignedHeaders=host%3Bx-amz-acl%3Bx-amz-server-side-encryption&X-Amz-Expires=1200&X-Amz-Signature=f48f6fdb85d8d928709b5d6193ba452c20684f14da2a89bee7b00f9854224a70"
}
API Explorer: folders/{folderId}/s3/sign
First, use the folderId
and fileName
to get a signed URL, which will later be used to upload the specified file to the test. The sample code returns a URL for a folderId
of 5b7dc9c6c7dc9739167b23c8
and a fileName
of colors.csv
. Replace colors.csv
with the actual file name, and 5b7dc9c6c7dc9739167b23c8
with your folderId
.
Upload File to Signed URL for Folder
Upload or Update Files to Shared Folder Upload File to Signed URL for Folder
curl 'https://blazemeter.s3.amazonaws.com/organizations/123429/shared/ApiTest/colors.csv?x-amz-acl=private&x-amz-server-side-encryption=AES256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJPZOF6U7I33QK2CQ%2F20190309%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190309T154412Z&X-Amz-SignedHeaders=host%3Bx-amz-acl%3Bx-amz-server-side-encryption&X-Amz-Expires=1200&X-Amz-Signature=f48f6fdb85d8d928709b5d6193ba452c20684f14da2a89bee7b00f9854224a70' \
-X PUT \
-H 'Content-Type: application/octet-stream' \
--data-binary '@/my/path/to/colors.csv'
Response 200 OK
Once you have obtained the signed URL (in result
above), construct a PUT request with the file as your body.
Use the following template for the file path and name:
'@*path to file*/*file*.*ext*'
In the example to the right, replace @/my/path/to/colors.csv
with the actual path and file name.
To update the contents of an uploaded file, repeat the same two-step operation (GET signed url, PUT to signed url given). Be sure to upload the updated file using the same file name.
Shared Folder File Requirements
The file naming requirements, limitations on file content, file size and impact of uploaded files on start time remain the same as the single test.
List Shared Folder Files
List Shared Folder Files
curl 'https://a.blazemeter.com/api/v4/folders/5b96c41fad67294528f03df8/files' \
--user 'api_key_id:api_key_secret'
API Explorer: /folders
To get the list of shared folder files, you will need the folderId
. The example code on the right returns the list of the files in the shared folder with folderid
of 5b96c41fad67294528f03df8
. Use the actual ID value for the shared folder to get the list of files from that shared folder.
List Shared Folder Files Parameters
Parameters
-
filename
stringNarrows the list to files that contain this string
List Shared Folder Files Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": "5b7dc9c6c7dc9739167b23c8",
"name": "ApiTest",
"deleable": false,
"created": 1534970310,
"workspaceId": 123456,
"files": [
{
"lastModified": 1588606663,
"name": "Dummy.jmx",
"size": 18111,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/Dummy.jmx?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=677733c18cf94be0268b77d8f1d78108eb355433cc164c41872f3876ab141c41",
"linkExpire": 1593031685
},
{
"lastModified": 1585685174,
"name": "colors.csv",
"size": 286,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/colors.csv?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=544b16e12b730fb4d76e1946a595cec4100bd3f47957358f8696283cf7df4e21",
"linkExpire": 1593031685
},
{
"lastModified": 1585685142,
"name": "hello.txt",
"size": 192,
"link": "https://storage.blazemeter.com/blazemeter-gcp/organizations/123429/shared/ApiTest/hello.txt?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EE7F7ZECFQG2AMFT47JPCFCTXTGEW52TQE7AA2Y6DS4SCW37UO4ZSCNI%2F20200623%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200623T204805Z&X-Amz-SignedHeaders=host&X-Amz-Expires=86400&X-Amz-Signature=1d357c42ccbd5a05abff31528dc3ac78a9c40fba8e7bfcad67782363d152d06f",
"linkExpire": 1593031685
}
]
},
"request_id": "5ef26a85751d4"
}
To see a breakdown of the attributes, please see The Folder Object section.
Delete Shared Folder File
Delete Shared Folder File
curl 'https://a.blazemeter.com/api/v4/folders/5b96c41fad67294528f03df8/delete-file' \
-X POST \
-H "Content-Type: application/json" \
--user 'api_key_id:api_key_secret' \
-d '{"fileName":"MyTest.jmx"}'
API Explorer: /folders/{folderId}/delete-file
To delete an uploaded file from a shared folder, you need to know the folderId
and the filename
. The sample code deletes the file, MyTest.jmx
, from the shared folder with an ID of 5b96c41fad67294528f03df8
. Replace MyTest.jmx
with the actual file name and 5b96c41fad67294528f03df8
with your folderId
.
Delete Shared Folder File Request Attributes
Delete Shared Folder File Delete Shared Folder File POST Body (JSON)
{
"fileName": "MyTest.jmx"
}
Attributes
-
filename
stringrequired
The filename of the file you want to delete
Delete Shared Folder File Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": true
}
Delete a Shared Folder
Delete a Shared Folder
curl 'https://a.blazemeter.com/api/v4/folders/5b96c41fad67294528f03df8' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /folders/{folderId}
To delete a shared folder, you need to know the folderId
. The sample code deletes a shared folder with an ID of 5b96c41fad67294528f03df8
. Use the folderId
of the actual shared folder to delete in place of the 5b96c41fad67294528f03df8
.
Credentials
API explorer: /credentials
BlazeMeter supports authenticating integrated apps with a user name/password combination or by using temporary access tokens.
Authenticate Credentials with User Name and Password
Authenticate with User Name and Password
curl 'https://a.blazemeter.com/api/v4/credentials/validate' \
-X POST \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"type":"appdynamics","name":"user1","credentials":{"applicationName":"test-application","controllerHost":"company1.saas.appdynamics.com","controllerPort":"443","accountName":"gracehopper","userName":"gracehopper","accountPassword":"5531vvp0jq6a","useAccessToken":false},"workspaceId":1234567}'
Authenticate integrated apps using user name and account password ("Access Key").
Authenticate with User Name and Password Request Attributes
Authenticate with User Name and Password Authenticate with User Name and Password POST Body (JSON)
{
"type": "appdynamics",
"name": "user1",
"credentials": {
"applicationName": "test-application",
"controllerHost": "company1.saas.appdynamics.com",
"controllerPort": "443",
"accountName": "gracehopper",
"userName":"gracehopper",
"accountPassword":"5531vvp0jq6a",
"useAccessToken": "false"
},
"workspaceId": 1234567
}
Attributes
-
type
stringrequired
The integration to authenticate, for example:
appdynamics
-
name
stringrequired
The credential name, for example:
user1
-
credentials
arrayrequired
List of credential details
-
applicationName
stringrequired
The name of the application
-
controllerHost
stringrequired
The URL of the controller
-
controllerPort
stringrequired
The port used by the host
-
accountName
stringName of account with credentials
-
userName
stringThe user name. Usually identical to
accountName
-
accountPassword
stringThe account password. Also called "Access Key" in the UI
-
useAccessToken
booleanrequired
Set to
false
. IfuseAccessToken
is set totrue
, thenaccountName
,accountPassword
anduserName
become invalid or ignored. However, you need to provide an access token in the credentials (see Authenticate Credentials with Access Token.
-
-
workspaceId
stringrequired
The ID of the workspace
Authenticate Credentials with Access Token
Authenticate with Access Token
curl 'https://a.blazemeter.com/api/v4/credentials/validate' \
-X POST \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"type":"appdynamics","name":"token1","credentials":{"applicationName":"test-application","controllerHost":"company1.saas.appdynamics.com","controllerPort":"443","accessToken":"eyJraWQiOiJiNWJlYmZlOC03ODkwLTRkZDMtYjdjYS1lMDgxNDQwZjI5ZWQiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJBcHBEeW5hbWljcyIsImF1ZCI6IkFwcERfQVBJcyIsImp0aSI6IlNZYnBKVGZ3N0FWbzRrcEk3UnhNS1EiLCJzdWIiOiJiemEtY2xpZW50IiwiaWRUeXBlIjoiQVBJX0NMSUVOVCIsImlkIjoiMDExZGVkY2YtYmVjYy00OGVkLTk4YTUtMjFmN2QzMzRjMDk1IiwiYWNjdElkIjoiYjViZWJmZTgtNzg5MC00ZGQzLWI3Y2EtZTA4MTQ0MGYyOWVkIiwidG50SWQiOiJiNWJlYmZlOC03ODkwLTRkZDMtYjdjYS1lMDgxNDQwZjI5ZWQiLCJhY2N0TmFtZSI6ImJpa2VyMjAyMjEwMjUwMTM4MDAzIiwidGVuYW50TmFtZSI6IiIsImZtbVRudElkIjpudWxsLCJhY2N0UGVybSI6W10sInJvbGVJZHMiOltdLCJpYXQiOjE2NzA1MDA2OTEsIm5iZiI6MTY3MDUwMDU3MSwiZXhwIjoxNjcxNTM3NDkxLCJ0b2tlblR5cGUiOiJBQ0NFU1MifQ.x22DC81Dlk_mi2PGpR2ek_a86hCtGe2f7wdrXO4LAgc","useAccessToken":true},"workspaceId":1234567}'
Authenticate integrated apps using a temporary access token.
Authenticate with Access Token Request Attributes
Authenticate with Access Token Authenticate with Access Token POST Body (JSON)
{
"type": "appdynamics",
"name": "user1",
"credentials": {
"applicationName": "test-application",
"controllerHost": "company1.saas.appdynamics.com",
"controllerPort": "443",
"accessToken": "eyJraWQiOiJiNWJlYmZlOC03ODkwLTRkZDMtYjdjYS1lMDgxNDQwZjI5ZWQiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJBcHBEeW5hbWljcyIsImF1ZCI6IkFwcERfQVBJcyIsImp0aSI6IlNZYnBKVGZ3N0FWbzRrcEk3UnhNS1EiLCJzdWIiOiJiemEtY2xpZW50IiwiaWRUeXBlIjoiQVBJX0NMSUVOVCIsImlkIjoiMDExZGVkY2YtYmVjYy00OGVkLTk4YTUtMjFmN2QzMzRjMDk1IiwiYWNjdElkIjoiYjViZWJmZTgtNzg5MC00ZGQzLWI3Y2EtZTA4MTQ0MGYyOWVkIiwidG50SWQiOiJiNWJlYmZlOC03ODkwLTRkZDMtYjdjYS1lMDgxNDQwZjI5ZWQiLCJhY2N0TmFtZSI6ImJpa2VyMjAyMjEwMjUwMTM4MDAzIiwidGVuYW50TmFtZSI6IiIsImZtbVRudElkIjpudWxsLCJhY2N0UGVybSI6W10sInJvbGVJZHMiOltdLCJpYXQiOjE2NzA1MDA2OTEsIm5iZiI6MTY3MDUwMDU3MSwiZXhwIjoxNjcxNTM3NDkxLCJ0b2tlblR5cGUiOiJBQ0NFU1MifQ.x22DC81Dlk_mi2PGpR2ek_a86hCtGe2f7wdrXO4LAgc",
"useAccessToken": "true"
},
"workspaceId": 1234567
}
Attributes
-
type
stringrequired
The integration to authenticate, for example:
appdynamics
-
name
stringrequired
The credential name, for example:
token1
-
credentials
arrayrequired
List of credential details
-
applicationName
stringrequired
The name of the application
-
controllerHost
stringrequired
The URL of the controller
-
controllerPort
stringrequired
The port used by the host
-
accessToken
stringThe temporary access token used to authenticate credentials
-
useAccessToken
booleanrequired
Set to
true
. IfuseAccessToken
is set tofalse
, you need to provideaccountName
,accountPassword
, anduserName
.
-
-
workspaceId
stringrequired
The ID of the workspace
Test Scheduler
The test scheduler API will allow you to assign a cron schedule to your test to have it run on a schedule. You can read more about this feature in this article.
The Schedule Object
The Schedule Object
{
"api_version": 4,
"error": null,
"result": {
"id": "5c83ec4a7b12f573685c5f36",
"cron": "0 0 * * 1-5",
"nextRun": 1553126400,
"enabled": false,
"type": "testRun",
"created": 1552149578,
"updated": 1553117534,
"testCollectionId": 12345678,
"createdById": 123456,
"lastUpdatedById": 123456,
"nextExecutions": [
1593043200,
1593129600,
1593388800,
1593475200,
1593561600,
1593648000,
1593734400,
1593993600,
1594080000,
1594166400
]
},
"request_id": "5ef3b1640a13a"
}
Attributes
-
id
stringread-Only
The
scheduleId
for the created schedule -
cron
stringThe cron schedule you want to use for the test
-
nextRun
integerread-Only
The timestamp of the next test run
-
enabled
booleanDenotes if the schedule is active
-
type
stringread-Only
Type of schedule
-
created
integerread-Only
Timestamp the schedule was created
-
updated
integerread-Only
Timestamp the schedule was updated
-
testId
integerread-Only
required
Test Only
The
testId
of the test. Cannot be changed after creating the schedule -
testCollectionId
integerread-Only
required
Test Only
The
collectionId
of the multi test. Cannot be changed after creating the schedule -
createdById
integerread-Only
The
userId
of the user that created the schedule -
lastUpdatedById
integerread-Only
The
userId
of the user that updated the schedule -
nextExecutions
arrayread-Only
The list of timestamps of the next executions
Create a Schedule
You can find the information for creating a schedule for a test and multi test.
Create a Schedule for Test
Create a Schedule Create a Schedule for Test
curl 'https://a.blazemeter.com/api/v4/schedules' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"cron":"0 0 * * 1-5","testId":1234567}'
API Explorer: /schedules
To schedule a test, you need the testId
of the test you want to run on a schedule and build a cron string for the desired run schedule. For the sample code on the right, testId
1234567
has been scheduled with the cron schedule of 0 0 * * 1-5
(this schedule will run at midnight every Monday-Friday). To schedule your test, replace the testId
1234567
with the testId
of your test and the cron
attribute with your desired cron schedule.
Create a Schedule for Test Request Attributes
Create a Schedule Create a Schedule for Test POST Body (JSON)
{
"cron": "0 0 * * 1-5",
"testId": 1234567
}
Attributes
-
cron
stringrequired
The cron schedule you want to use for the test
-
testId
integerrequired
Test Only
The
testId
of the test
Create a Schedule for Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5c83e5610bd29075e16b2794",
"cron": "0 0 * * 1-5",
"nextRun": 1552262400,
"enabled": true,
"type": "testRun",
"created": 1552147809,
"updated": 1552147809,
"testId": 1234567,
"createdById": 123456
}
}
To see a breakdown of the attributes, please see The Schedule Object section.
Create a Schedule for Multi Test
Create a Schedule Create a Schedule for Multi Test
curl 'https://a.blazemeter.com/api/v4/schedules' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"cron":"0 0 * * 1-5","testCollectionId":12345678}'
API Explorer: /schedules
To schedule a test, you need the collectionId
of the test you want to run on a schedule and build a cron string for the desired run schedule. For the sample code on the right, collectionId
10027459
has been scheduled with the cron schedule of 0 0 * * 1-5
(this schedule will run at midnight every Monday-Friday). To schedule your test, replace the collectionId
10027459
with the collectionId
of your test and the cron
attribute with your desired cron schedule.
Create a Schedule for Multi Test Request Attributes
Create a Schedule Create a Schedule for Multi Test POST Body (JSON)
{
"cron": "0 0 * * 1-5",
"testCollectionId": 12345678
}
Attributes
-
cron
stringrequired
The cron schedule you want to use for the test
-
testCollectionId
integerrequired
Multi Test Only
The
collectionId
of the multi test
Create a Schedule for Multi Test Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5c83ec4a7b12f573685c5f36",
"cron": "0 0 * * 1-5",
"nextRun": 1552262400,
"enabled": true,
"type": "testRun",
"created": 1552149578,
"updated": 1552149578,
"testCollectionId": 12345678,
"createdById": 123456
}
}
To see a breakdown of the attributes, please see The Schedule Object section.
Update Schedule
Update Schedule
curl 'https://a.blazemeter.com/api/v4/schedules/5c83e5610bd29075e16b2794' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"enabled":false}'
API Explorer: /schedules/{scheduleId}
To update a schedule, use PATCH to change the provided configuration for a given schedule (you need to know the scheduleId
). The sample code updates a schedule with an ID of 5c83e5610bd29075e16b2794
to not run by setting enabled
to false. The sample code updates the schedule created in the Create a Schedule for Test section.
Update Schedule Request Attributes
Update Schedule Update Schedule PATCH Body (JSON)
{
"enabled": false
}
Attributes
-
enabled
booleanDenotes if the schedule is active (if
true
) or not (iffalse
)
Update Schedule Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": "5c83e5610bd29075e16b2794",
"cron": "0 0 * * 1-5",
"nextRun": 1552262400,
"enabled": false,
"type": "testRun",
"created": 1552147809,
"updated": 1552150058,
"testId": 1234567,
"createdById": 123456,
"lastUpdatedById": 123456
}
}
See the The Schedule Object for a full breakdown of the attributes.
List Schedules
List Schedules
curl 'https://a.blazemeter.com/api/v4/schedules?workspaceId=123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /schedules
To return a list of test schedules, an accountId
, a projectId
, a workspaceId
, a collectionId
, OR a testId
is required. The sample code returns a list for items with a workspaceId
of 123456
. Use the actual ID values for the project, workspace, collection, or test to return the list of test schedules.
You can return a list specifying either a projectId
, a workspaceId
, a collectionId
, a testId
, or any combination of the workspace, project, and either testId
or collectionId
. The returned list contains each test schedule's scheduleId
(shows up as id
in the response) and configuration.
List Schedules Parameters
Parameters
-
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of test schedules for -
accountId
integerrequired
The
accountId
you are wanting to get the list of test schedules for -
projectId
integerrequired
The
projectId
you are wanting to get the list of test schedules for -
testId
integerrequired
The
testId
you are wanting to get the list of test schedules for -
collectionId
integerrequired
The
collectionId
you are wanting to get the list of test schedules for -
enabled
booleanDenotes if you are wanting to get a list of test schedules that are enabled (if
true
) or disabled (iffalse
)
Also see: Pagination and Sorting
List Schedules Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5c83e5610bd29075e16b2794",
"cron": "0 0 * * 1-5",
"nextRun": 1552262400,
"enabled": false,
"type": "testRun",
"created": 1552147809,
"updated": 1552150058,
"testId": 6658400,
"createdById": 344260,
"lastUpdatedById": 344260
},
{
"id": "5c83ec4a7b12f573685c5f36",
"cron": "0 0 * * 1-5",
"nextRun": 1552262400,
"enabled": true,
"type": "testRun",
"created": 1552149578,
"updated": 1552149578,
"testCollectionId": 10027459,
"createdById": 344260
}
]
}
To see a breakdown of the attributes, please see The Schedule Object section.
Schedule Details
Schedule Details
curl 'https://a.blazemeter.com/api/v4/schedules/5c83ec4a7b12f573685c5f36' \
--user 'api_key_id:api_key_secret'
API Explorer: /schedules/{scheduleId}
To return the details of a test schedule, a scheduleId
is required. The sample code returns the details of the schedule with a scheduleId
of 5c83ec4a7b12f573685c5f36
. Use the actual ID value for the test schedule to return the details of that test schedule.
Schedule Details Parameters
Parameters
-
nextExecutions
integerDenotes the number of timestamps that is returned in the
nextExecutions
attribute in the response
Schedule Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": "5c83ec4a7b12f573685c5f36",
"cron": "0 0 * * 1-5",
"nextRun": 1553126400,
"enabled": false,
"type": "testRun",
"created": 1552149578,
"updated": 1553117534,
"testCollectionId": 12345678,
"createdById": 123456,
"lastUpdatedById": 123456,
"nextExecutions": [
1593043200,
1593129600,
1593388800,
1593475200,
1593561600,
1593648000,
1593734400,
1593993600,
1594080000,
1594166400
]
},
"request_id": "5ef3b1640a13a"
}
To see a breakdown of the attributes, please see The Schedule Object section.
List Schedule History
List Schedule History
curl 'https://a.blazemeter.com/api/v4/schedules/history?testId=1234567' \
--user 'api_key_id:api_key_secret'
API Explorer: /schedules/history
To return a list of test schedules, an accountId
, a projectId
, a workspaceId
, a collectionId
, a testId
, OR a scheduleId
is required. The sample code returns a list for schedule history for a testId
of 1234567
. Use the actual ID values for the project, workspace, collection, test, or schedule to return the history of your schedules.
You can return a schedule history specifying either a projectId
, a workspaceId
, a collectionId
, a testId
, or any combination of the workspace, project, and either testId
or collectionId
or scheduleId
. The returned list contains the schedule history of the test runs that meet the parameters provided.
List Schedule History Parameters
Parameters
-
workspaceId
integerrequired
The
workspaceId
you are wanting to get the test schedule history for -
accountId
integerrequired
The
accountId
you are wanting to get the test schedule history for -
projectId
integerrequired
The
projectId
you are wanting to get the test schedule history for -
testId
integerrequired
The
testId
you are wanting to get the list of test schedule history for -
collectionId
integerrequired
The
collectionId
you are wanting to get the test schedule history for -
scheduleId
integerrequired
The
scheduleId
you are wanting to get the test schedule history for -
fromDate
integerThe timestamp from where to start the test schedule history
-
toDate
integerThe timestamp from where to end the test schedule history
Also see: Pagination and Sorting
List Schedule History Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 1,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5c83f8919fee716a488b4567",
"runAt": 1552152723,
"success": true,
"name": "My New Test",
"scheduleId": "5c83f8840bd290041e05351d",
"scheduleType": "testRun",
"scheduleCronExpression": "32 17 * * 6",
"projectId": 123456,
"workspaceId": 123429,
"accountId": 123456,
"testId": 1234567,
"masterId": 12345678,
"created": 1552152721,
"updated": 1552152723
}
]
}
Attributes
-
id
stringThe
historyId
for the test run history -
runAt
integerThe timestamp of when the schedule ran
-
success
booleanDenotes if the test ran or not
-
name
stringThe name of the test that was run
-
scheduleId
stringThe
scheduleId
for the created schedule -
scheduleType
stringType of schedule
-
scheduleCronExpression
stringThe cron schedule used for the test
-
projectId
integerThe
projectId
of the project -
workspaceId
integerThe
workspaceId
of the workspace for the test -
accountId
integerThe
accountId
of the account -
testId
integerThe
testId
of the test -
testCollectionId
integerThe
collectionId
of the multi test -
masterId
integerThe
masterId
of the master -
created
integerThe timestamp of when the master was created
-
updated
integerThe timestamp of when the master was updated
Delete a Schedule
Delete a Schedule
curl 'https://a.blazemeter.com/api/v4/schedules/5c83f8667ffbc232772ad363' \
-X DELETE \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /schedules/{scheduleId}
To delete a test schedule, you need to know the scheduleId
. The sample code deletes a test schedule with an ID of 5c83f8667ffbc232772ad363
. Use the scheduleId
of the actual test schedule to delete in place of the 5c83f8667ffbc232772ad363
.
Private Locations
When you create a private location, you are creating a private-location
object configured with specific parameters. You can read more about what private locations are in this article.
Once you have created a private location, you will get a harborId
, the unique identifier for a private location, and this private location can contain multiple agents (represented by shipId
s).
You will need the workspaceId
(s) for your workspace (or workspaces) and the accountId
as it is required as part of the creation process.
You will also need to make sure that you have account admin access or manager workspace access for the API Key that you use, as they are the only users that can create and change private locations.
The Private Location Object
**The Private Location Object
{
"api_version": 4,
"error": null,
"result": {
"id": "5b0323b3c648be3b4c7b23c8",
"name": "Example Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 1000,
"slots": 1,
"type": "large",
"disabled": false,
"hidden": false,
"created": 1526932403,
"updated": 1593104036,
"accountId": 123456,
"shipsId": [
{
"$oid": "5dd841d46c6cd5b0064fa941"
}
],
"workspacesId": [
123456,
234567,
345678,
456789,
567890
],
"funcIds": [
"performance",
"functionalApi",
"proxyRecorder",
"mockServices",
"functionalGui",
"firefox:default",
"chrome:default"
],
"ships": [
{
"id": "5dd841d46c6cd5b0064fa941",
"name": "Example Agent",
"address": "172.31.9.152",
"publicIpAddress": "104.197.80.57",
"disabled": false,
"state": "idle",
"lastHeartBeat": 1593113786,
"lastCommandOutput": "",
"isLocked": false,
"installedVersion": "3.5.14",
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 20941426688,
"freePercent": 50.399999999999999
}
},
"platform": [
"linux",
"linux-x86_64"
],
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": true,
"info": {
"operatingSystem": "Ubuntu 16.04.5 LTS",
"operatingSystemType": "linux",
"memory": 8364474368,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "18.09.1",
"images": [
{
"Containers": -1,
"Created": 1592135649,
"Id": "sha256:51742f8148452b6a430d36f2e48d282e1d14adc21f816abb8d807989e1d6a116",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.20.51",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 6057428244,
"VirtualSize": 6057428244
},
{
"Containers": -1,
"Created": 1591189045,
"Id": "sha256:b2437a3424f204ced0d50248d0730bd77d91524e2c25b607b1a86ac7a9f3714d",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/crane@sha256:4db1384498f8004c769ecf5e1ab263a6b1a3d3901301ac96c3f56f2503730080"
],
"RepoTags": [
"blazemeter/crane:3.5.14",
"blazemeter/crane:latest",
"gcr.io/verdant-bulwark-278/blazemeter/crane:3.5.14"
],
"SharedSize": -1,
"Size": 52096988,
"VirtualSize": 52096988
},
{
"Containers": -1,
"Created": 1590781539,
"Id": "sha256:b599a4dff82d23ee0105080a783e5cc9d1eff950eb22f9e9a16c6b14f7ecae7d",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/service-mock@sha256:937312834575c484fab2d73c7f4608809e9acd118fe6e7ab5646697f6b85c3c2"
],
"RepoTags": [
"blazemeter/service-mock:3.6.0",
"blazemeter/service-mock:latest",
"gcr.io/verdant-bulwark-278/blazemeter/service-mock:3.6.0"
],
"SharedSize": -1,
"Size": 372896323,
"VirtualSize": 372896323
},
{
"Containers": -1,
"Created": 1590781538,
"Id": "sha256:5e37add71f0f3a48527c46a08278b3b17530443e2b7ff8426b50340c6a7ed6bd",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/sv-bridge@sha256:34d5c73460a4de7aa7d5f97aab2671ac0b18abdbc7f1a75bc11696a40acd4530"
],
"RepoTags": [
"blazemeter/sv-bridge:3.6.0",
"blazemeter/sv-bridge:latest",
"gcr.io/verdant-bulwark-278/blazemeter/sv-bridge:3.6.0"
],
"SharedSize": -1,
"Size": 349876453,
"VirtualSize": 349876453
},
{
"Containers": -1,
"Created": 1589900192,
"Id": "sha256:2d59cc77c273988b10f90eb62d2cee5fec0d7ac40f307e11093bfd2dd0828be1",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/apm@sha256:5949ff7b8f820555f912a21fdc0eef96146e7e1b19c43d9290646ad3db91abb8"
],
"RepoTags": [
"apm-image:1.4.7",
"apm-image:latest",
"gcr.io/verdant-bulwark-278/blazemeter/apm:1.4.7"
],
"SharedSize": -1,
"Size": 357829202,
"VirtualSize": 357829202
},
{
"Containers": -1,
"Created": 1589893087,
"Id": "sha256:44d6f361eef7b27849186dac0680783b9870017f353700b1e8379eb20046640b",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/proxy-recorder@sha256:19921c689a689f4de8860e8ff2f61a4c6ccbb8fd552f3fceab3cdf34138fb6e1"
],
"RepoTags": [
"blazemeter/proxy-recorder:1.11.7",
"blazemeter/proxy-recorder:latest",
"gcr.io/verdant-bulwark-278/blazemeter/proxy-recorder:1.11.7"
],
"SharedSize": -1,
"Size": 879555522,
"VirtualSize": 879555522
},
{
"Containers": -1,
"Created": 1583919985,
"Id": "sha256:e61377ea370bc7a01ac1547cc34c1afb7ba88e04c8a8d2c8fa13b808b2c225d7",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
}
]
}
}
},
"isAutoUpdate": true,
"hasJetlag": true,
"hasJetpack": true,
"useMasterFiles": true,
"uptime": 18661425,
"portRange": "5000-5556",
"baseUrl": "https://a.blazemeter.com",
"hasProxy": false,
"verifySSL": true,
"created": 1574453716,
"updated": 1593113786,
"updaterStatus": {
"status": "success",
"lastUpdateCheck": 1593112089,
"nextUpdateCheck": 1593115689
},
"ts": 1593113786
}
]
},
"request_id": "5ef4fcbdb6300"
}
Attributes
-
id
stringread-only
The
harborId
of the private location -
name
stringrequired
The name of the private location
-
userId
integerread-only
The
userId
of the user to access the API -
consoleXms
integerThe minimum memory usage for JVM Arguments. Must match
engineXms
-
consoleXmx
integerThe maximum memory usage for JVM Arguments. Must match
engineXmx
-
engineXms
integerThe minimum memory usage for JVM Arguments. Must match
consoleXms
-
engineXmx
integerThe maximum memory usage for JVM Arguments. Must match
consoleXmx
-
threadsPerEngine
integerrequired
The maximum number of threads per instance you can run with. The max value is plan dependent or 1000 threads, whichever is the smallest
-
slots
integerrequired
This controls the number of "engines" that can run in one agent. If
type
is "large", this must be1
. Iftype
is "small", this can vary -
type
stringThe type of private location to create (only accepts "large" or "small"). The "large" version refers to the Dedicated engine, while the "small" version refers to a Shared engine, as explained in this article
-
disabled
booleanDenotes if the private location is disabled (if
true
) or not (iffalse
) -
hidden
booleanread-only
Denotes if the private location is hidden or not. No longer used
-
created
integerread-only
The timestamp of when the private location was created
-
updated
integerread-only
The timestamp of when the private location was updated
-
accountId
integerrequired
The
accountId
the private location is tied to -
shipsId
arrayread-only
The list of
shipId
s that are tied to the private location-
$oid
stringread-only
The
shipId
of the agent tied to the private location
-
-
workspacesId
arrayrequired
The list of
workspaceId
s that the private location is available in. TheseworkspaceId
s must be included in the same accountId -
funcIds
arrayrequired
The list of functionalities that this private location will use. For Dedicated ("large") type, ONLY ONE functionality can be used, while the Shared ("small") can have one or more functionalities. Visit this link for full list of functionalities. If you are using private cloud, see this link
-
ships
arrayread-only
A list of ship/server objects describing the agents available in the private location
The Server Object
The Server Object
{
"api_version": 4,
"error": null,
"result": {
"id": "5dd841d46c6cd5b0064fa941",
"name": "New Agent Check",
"address": "10.142.0.25",
"publicIpAddress": "35.196.139.239",
"disabled": false,
"state": "idle",
"lastHeartBeat": 1593113721,
"lastCommandOutput": "",
"isLocked": false,
"installedVersion": "3.5.14",
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 20941471744,
"freePercent": 50.399999999999999
},
"/var/lib/docker": {
"present": false
},
"/home/blazemeter": {
"present": true,
"freeSpace": 70525837312
}
},
"platform": [
"linux",
"linux-x86_64"
],
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": true,
"info": {
"operatingSystem": "Ubuntu 16.04.5 LTS",
"operatingSystemType": "linux",
"memory": 8364474368,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "18.09.1",
"images": [{
"Containers": -1,
"Created": 1592135649,
"Id": "sha256:51742f8148452b6a430d36f2e48d282e1d14adc21f816abb8d807989e1d6a116",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.20.51",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 6057428244,
"VirtualSize": 6057428244
},
{
"Containers": -1,
"Created": 1591189045,
"Id": "sha256:b2437a3424f204ced0d50248d0730bd77d91524e2c25b607b1a86ac7a9f3714d",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/crane@sha256:4db1384498f8004c769ecf5e1ab263a6b1a3d3901301ac96c3f56f2503730080"
],
"RepoTags": [
"blazemeter/crane:3.5.14",
"blazemeter/crane:latest",
"gcr.io/verdant-bulwark-278/blazemeter/crane:3.5.14"
],
"SharedSize": -1,
"Size": 52096988,
"VirtualSize": 52096988
},
{
"Containers": -1,
"Created": 1590781539,
"Id": "sha256:b599a4dff82d23ee0105080a783e5cc9d1eff950eb22f9e9a16c6b14f7ecae7d",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/service-mock@sha256:937312834575c484fab2d73c7f4608809e9acd118fe6e7ab5646697f6b85c3c2"
],
"RepoTags": [
"blazemeter/service-mock:3.6.0",
"blazemeter/service-mock:latest",
"gcr.io/verdant-bulwark-278/blazemeter/service-mock:3.6.0"
],
"SharedSize": -1,
"Size": 372896323,
"VirtualSize": 372896323
},
{
"Containers": -1,
"Created": 1590781538,
"Id": "sha256:5e37add71f0f3a48527c46a08278b3b17530443e2b7ff8426b50340c6a7ed6bd",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/sv-bridge@sha256:34d5c73460a4de7aa7d5f97aab2671ac0b18abdbc7f1a75bc11696a40acd4530"
],
"RepoTags": [
"blazemeter/sv-bridge:3.6.0",
"blazemeter/sv-bridge:latest",
"gcr.io/verdant-bulwark-278/blazemeter/sv-bridge:3.6.0"
],
"SharedSize": -1,
"Size": 349876453,
"VirtualSize": 349876453
},
{
"Containers": -1,
"Created": 1589900192,
"Id": "sha256:2d59cc77c273988b10f90eb62d2cee5fec0d7ac40f307e11093bfd2dd0828be1",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/apm@sha256:5949ff7b8f820555f912a21fdc0eef96146e7e1b19c43d9290646ad3db91abb8"
],
"RepoTags": [
"apm-image:1.4.7",
"apm-image:latest",
"gcr.io/verdant-bulwark-278/blazemeter/apm:1.4.7"
],
"SharedSize": -1,
"Size": 357829202,
"VirtualSize": 357829202
},
{
"Containers": -1,
"Created": 1589893087,
"Id": "sha256:44d6f361eef7b27849186dac0680783b9870017f353700b1e8379eb20046640b",
"Labels": null,
"ParentId": "",
"RepoDigests": [
"gcr.io/verdant-bulwark-278/blazemeter/proxy-recorder@sha256:19921c689a689f4de8860e8ff2f61a4c6ccbb8fd552f3fceab3cdf34138fb6e1"
],
"RepoTags": [
"blazemeter/proxy-recorder:1.11.7",
"blazemeter/proxy-recorder:latest",
"gcr.io/verdant-bulwark-278/blazemeter/proxy-recorder:1.11.7"
],
"SharedSize": -1,
"Size": 879555522,
"VirtualSize": 879555522
},
{
"Containers": -1,
"Created": 1583919985,
"Id": "sha256:e61377ea370bc7a01ac1547cc34c1afb7ba88e04c8a8d2c8fa13b808b2c225d7",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
}
]
}
}
},
"isAutoUpdate": true,
"hasJetlag": true,
"hasJetpack": true,
"useMasterFiles": true,
"uptime": 18661360,
"portRange": "5000-5556",
"baseUrl": "https://a.blazemeter.com",
"hasProxy": false,
"verifySSL": true,
"created": 1574453716,
"updated": 1593113721,
"updaterStatus": {
"status": "success",
"lastUpdateCheck": 1593112089,
"nextUpdateCheck": 1593115689,
"lastUpdate": 1551225507
},
"ts": 1593113721
},
"request_id": "5ef4fc79c353d"
}
Attributes
-
id
stringread-only
The
shipId
of the private location -
name
stringrequired
The name of the agent
-
address
stringThe internal or manually assigned IP address of the machine where the agent is installed
-
publicIpAddress
stringread-only
The public IP address that is gathered from the machine where the agent is installed
-
disabled
booleanDenotes if the agent is disabled (if
true
) or not (iffalse
) -
state
stringread-only
The status of the agent. Can be one of the following:
idle
downloading
running
detached
error
empty
-
lastHeartBeat
integerread-only
The timestamp of when the last heartbeat was received
-
lastCommandOutput
stringread-only
Describes the last command handled by the agent
-
isLocked
booleanread-only
Denotes if the agent is avaiable for use or not
-
installedVersion
stringread-only
The version of the
blazemeter/crane
currently running on the machine the agent is installed -
hostInfo
objectread-only
The agent host information details
-
diskSpace
objectread-only
The agent machine disk space information
-
/tmp
objectread-only
The agent machine
/tmp
folder disk space information-
present
booleanread-only
Denotes if this folder is present on the agent's machine
-
freeSpace
integerread-only
Denotes remaining disk space available in this folder in bytes
-
freePercent
floatread-only
Denotes the percent of the disk space available in this folder
-
-
/var/lib/docker
objectread-only
The agent machine
/var/lib/docker
folder disk space information-
present
booleanread-only
Denotes if this folder is present on the agent's machine
-
-
/home/blazemeter
objectread-only
The agent machine
/home/blazemeter
folder disk space information-
present
booleanread-only
Denotes if this folder is present on the agent's machine
-
freeSpace
integerread-only
Denotes remaining disk space of the disk space in this folder in bytes
-
-
-
platform
arrayread-only
The list of agent machine platform details
-
containerManager
objectread-only
The container information from the agent machine
-
type
stringread-only
Indicates the installation type of the agent. Can be any of the following:
DockerManger
- Indicates the instance was installed in DockerKubernetesManager
- Indicates the instance was installed in Kubernetes -
usingDockerRegistry
booleanread-only
Denotes that this agent is pulling from a Docker registry. This will always be
true
-
info
objectread-only
The machine information details
-
operatingSystem
stringread-only
The operating system that is installed on the agent's machine
-
operatingSystemType
stringread-only
The type of operating system that is installed on the agent's machine
-
memory
integerread-only
The amount of memory on the agent's machine in bytes
-
cpus
integerread-only
The amount of CPUs on the agent's machine
-
dockerRootDir
stringread-only
The location of the root directory for the agent installation
-
dockerVersion
stringread-only
The version of Docker installed on the agent's machine
-
images
arrayread-only
List of images installed on the machine
-
Containers
integerread-only
This value is always
-1
-
Created
integerread-only
The timestamp of when the image was created
-
Id
stringread-only
The image ID of the image
-
Labels
nullread-only
This value is always
null
-
ParentId
stringread-only
This value is always empty
-
RepoDigests
nullread-only
This value is always
null
-
RepoTags
arrayread-only
This value denotes all the image tags for the image. You can find a full list of images in the appendix
-
SharedSize
integerread-only
This value is always
-1
-
Size
integerread-only
This value denotes the size of the image in bytes
-
VirtualSize
integerread-only
This value denotes the size of the image in bytes
-
-
-
-
-
isAutoUpdate
booleanread-only
Denotes if the agent auto updates (if
true
) or not (iffalse
) -
uptime
integerread-only
The time (in seconds) the private location has been running
-
portRange
stringThe range of ports available for the proxy recorder functionality. Must be a range of at least 2 ports using the following format:
{startPort}-{endPort}
-
baseUrl
stringread-only
The base URL being used by the OPL. Will only be different for private cloud users, otherwise will alwasy be https://a.blazemeter.com
-
hasProxy
booleanread-only
Denotes if the OPL uses is setup to go through a proxy (if
true
) or not (iffalse
) -
verifySSL
booleanread-only
Denotes if the OPL uses SSL verification (if
true
) or not (iffalse
) -
created
integerread-only
The timestamp of when the agent was created
-
updated
integerread-only
The timestamp of when the agent was last updated
-
updaterStatus
objectread-only
The update status details
-
status
stringread-only
Indicates what the status of the last update is. Will be
success
if everything updated without issue orfailed
if not (and will generated thelastError
attribute) -
lastUpdateCheck
integerread-only
The timestamp of the last update check
-
nextUpdateCheck
integerread-only
The timestamp of the next update check
-
lastUpdate
integerread-only
The timestamp of the last update
-
lastError
objectread-only
Details the last error details that was observed during the update
-
errorType
stringread-only
The type of error that was generated during the update (i.e.
OutOfDiskSpaceError
) -
errorMessage
stringread-only
The error message that was generated during the update
-
-
-
ts
integerread-only
The timestamp of when the agent was last updated
Create a Private Location
Create a Private Location
curl 'https://a.blazemeter.com/api/v4/private-locations' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"consoleXms":1024,"consoleXmx":4096,"engineXms":1024,"engineXmx":4096,"name":"My Private Location","slots":1,"threadsPerEngine":1000,"type":"large","overrideCPU":2,"overrideMemory":4096,"accountId":123456,"workspacesId":[123456]}'
API Explorer: /private-locations
The steps for creating a private location are as follows:
- Create the private-locations object with the Create a Private Location API.
- Capture the
harborId
returned asid
from the response. - Add agent(s) to the private location by using the
harborId
, which is explained in the Create an Agent section. - Capture the
shipId
returned asid
from the response. - Generate the
docker run
command using theshipId
, which is explained in Generate Docker Command section. - Go to step 5 of the Agent installation article and follow the reamining steps to complete the agent installation.
Create a Dedicated Private Location Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Create a Private Location Create a Dedicated Private Location POST Body (JSON)
{
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"funcIds":["performance"],
"name": "My Private Location",
"slots": 1,
"threadsPerEngine": 1000,
"type": "large",
"overrideCPU": 2,
"overrideMemory": 4096,
"accountId": 123456,
"workspacesId": [
123456
]
}
Attributes
-
consoleXms
integerThe minimum memory usage for JVM Arguments. Must match
engineXms
-
consoleXmx
integerThe maximum memory usage for JVM Arguments. Must match
engineXmx
-
engineXms
integerThe minimum memory usage for JVM Arguments. Must match
consoleXms
-
engineXmx
integerThe maximum memory usage for JVM Arguments. Must match
consoleXmx
-
funcIds
arrayrequired
The list of functionalities that this private location will use. For Dedicated ("large") type, ONLY ONE functionality can be used, while the Shared ("small") can have one or more functionalities. Visit this link for full list of functionalities
-
name
stringrequired
The name of the private location
-
slots
integerThis controls the number of "engines" that can run in one agent. If
type
is "large", this must be1
. Iftype
is "small", this can vary -
threadsPerEngine
integerrequired
The maximum number of threads per instance you can run with. The max value is plan dependent or 1000 threads, whichever is the smallest
-
type
stringrequired
The type of private location to create (only accepts "large" or "small"). The "large" version refers to the Dedicated engine, while the "small" version refers to a Shared engine, as explained in this article
-
overrideCPU
integerSets the number of CPU(s) the agent will spin an instance up with
-
overrideMemory
integerSets the amount of memory the agent will spin an instance up with
-
accountId
integerrequired
The
accountId
of your account -
workspacesId
arrayrequired
Can contain a list of
workspaceId
s from the same account
Create a Dedicated Private Location Response Attributes
Response (Dedicated) 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d1641a21726d36d4632fd34",
"name": "My Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 1000,
"slots": 1,
"type": "large",
"funcIds": [
"performance"
],
"hidden": false,
"overrideCPU": 2,
"overrideMemory": 4096,
"created": 1561739682,
"updated": 1561739682,
"accountId": 123456,
"workspacesId": [
123456
],
"ships": []
},
"request_id": "5d1641a1c3fd1"
}
To see a breakdown of the attributes, please see The Private Location Object section.
Create a Shared Private Location Request Attributes
Create a Private Location Create a Shared Private Location POST Body (JSON)
{
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"name": "My Private Location",
"slots": 5,
"threadsPerEngine": 1000,
"type": "small",
"funcIds":["performance","functionalApi","proxyRecorder"],
"overrideCPU": 1,
"overrideMemory": 4096,
"accountId": 123456,
"workspacesId": [
123456
]
}
Attributes
-
consoleXms
integerThe minimum memory usage for JVM Arguments. Must match
engineXms
-
consoleXmx
integerThe maximum memory usage for JVM Arguments. Must match
engineXmx
-
engineXms
integerThe minimum memory usage for JVM Arguments. Must match
consoleXms
-
engineXmx
integerThe maximum memory usage for JVM Arguments. Must match
consoleXmx
-
funcIds
arrayrequired
The list of functionalities that this private location will use. For Dedicated ("large") type, ONLY ONE functionality can be used, while the Shared ("small") can have one or more functionalities. Visit this link for full list of functionalities
-
name
stringrequired
The name of the private location
-
slots
integerThis controls the number of "engines" that can run in one agent. If
type
is "large", this must be 1. Iftype
is "small", this can vary -
threadsPerEngine
integerrequired
The maximum number of threads per instance you can run with. The max value is plan dependent or 1000 threads, whichever is the smallest
-
type
stringrequired
The type of private location to create (only accepts "large" or "small"). The "large" version refers to the Dedicated engine, while the "small" version refers to a Shared engine, as explained in this article
-
overrideCPU
integerSets the number of CPU(s) the agent will spin an instance up with
-
overrideMemory
integerSets the amount of memory the agent will spin an instance up with
-
accountId
integerrequired
The
accountId
of your account -
workspacesId
arrayrequired
Can contain a list of
workspaceId
s from the same account
Create a Shared Private Location Response Attributes
Response (Shared) 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d1641a21726d36d4632fd34",
"name": "My Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 1000,
"slots": 5,
"type": "large",
"funcIds": [
"performance",
"functionalApi",
"proxyRecorder"
],
"hidden": false,
"overrideCPU": 1,
"overrideMemory": 4096,
"created": 1561739682,
"updated": 1561739682,
"accountId": 123456,
"workspacesId": [
123456
],
"ships": []
},
"request_id": "5d1641a1c3fd1"
}
To see a breakdown of the attributes, please see The Private Location Object section.
Create an Agent
Create an Agent
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34/servers' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"My Agent","address":"123.12.12.123"}'
API Explorer: /private-locations/{harborId}/servers
To create an agent, POST the provided configuration (you will need to know the harborId
). The sample code adds an agent to a private location with a harborId
of 5d1641a21726d36d4632fd34
(the 5d1641a21726d36d4632fd34
is contained in the URL) with a new agent name My Agent
and using an IP of 123.12.12.123
in the address
attribute. To use this API, replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
and give the name
attribute a name of your choosing and, optionally, the IP of your machine.
Create an Agent Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Create an Agent Create an Agent POST Body (JSON)
{
"name": "My Agent",
"address": "123.12.12.123"
}
Attributes
-
name
stringrequired
The name of the agent
-
address
stringThe IP address of the agent
Create an Agent Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d2657219583d81adc3778b4",
"name": "My Agent",
"address": "123.12.12.123",
"state": "empty",
"hasJetlag": false,
"created": 1562793761,
"updated": 1562793761,
"ts": null
},
"request_id": "5d265720cf008"
}
To see a breakdown of the attributes, please see The Server Object section.
Generate Docker Command
Generate Docker Command
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34/ships/5d2657219583d81adc3778b4/docker-command' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations/{harborId}/ships/{shipId}/docker-command
To generate a Docker command, you will need to know the harborId
and shipId
. The sample code generates a docker run
command for the agent with shipId
of 5d2657219583d81adc3778b4
and the private location with harborId
of 5d1641a21726d36d4632fd34
. To use this API, replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
and the shipId
of 5d2657219583d81adc3778b4
with your shipId
.
Generate Docker Command Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"dockerCommand": "docker run -d --env HARBOR_ID=5d1641a21726d36d4632fd34 --env SHIP_ID=5d2657219583d81adc3778b4 --env AUTH_TOKEN=3be47b20b76e228283899b482d55db7fb0f3bffac6f07fa6bbb10ddb5bcbcc8c --name=bzm-crane-5d2657219583d81adc3778b4 --restart=on-failure -v /var/run/docker.sock:/var/run/docker.sock -w /usr/src/app/ -v /tmp:/tmp --net=host blazemeter/crane python agent/agent.py"
},
"request_id": "5d265c1c0594e"
}
Attributes
-
dockerCommand
stringThe generated
docker run
command used for agent installation
Add a Workspace to Private Location
Add a Workspace to Private Location
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34/add-workspace' \
-X POST \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"workspaceId": 234567}'
API Explorer: /private-locations/{harborId}/add-workspace
To create a workspace to your private location, you will need to know the harborId
and the worksapceId
. The sample code adds workspaceId
of 234567
to a private location with a harborId
of 5d1641a21726d36d4632fd34
(the 5d1641a21726d36d4632fd34
is contained in the URL). To use this API, replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
and give the workspaceId
of a workspace you want to add.
Add a Workspace to Private Location Request Attributes
The following parameters are the parameters used to create a private location
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Add a Workspace to Private Location Add a Workspace to Private Location POST Body (JSON)
{
"workspaceId": 234567
}
Attributes
-
workspaceId
integerrequired
The
workspaceId
of the workspace to be added
Add a Workspace to Private Location Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d1641a21726d36d4632fd34",
"name": "My Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 1000,
"slots": 1,
"type": "large",
"hidden": false,
"created": 1562854534,
"updated": 1562854573,
"accountId": 123456,
"shipsId": [
{
"$oid": "5d2657219583d81adc3778b4"
}
],
"workspacesId": [
123456,
234567
],
"ships": [
{
"id": "5d2657219583d81adc3778b4",
"name": "My Agent",
"address": "123.12.12.123",
"state": "empty",
"hasJetlag": false,
"created": 1561739682,
"updated": 1562854544,
"ts": null
}
]
},
"request_id": "5d2744ad525c5"
}
To see a breakdown of the attributes, please see The Private Location Object section.
List Private Locations
List Private Locations
curl 'https://a.blazemeter.com/api/v4/private-locations?accountId=123429&workspaceId=123456' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations
To return a list of created private locations, an accountId
or a workspaceId
is required. The sample code returns a list of private locations within an accountId
of 123456
and a workspaceId
of 123456
. Use the actual ID values for the account or workspace to return the list of its private locations.
You can return a list specifying either a accountId
, a workspaceId
, or both. The returned list contains each private location's harborId
(shows up as id
in the response) and configuration.
List Private Locations Parameters
Parameters
-
accountId
integerrequired
The
accountId
you are wanting to get the list of private locations from -
workspaceId
integerrequired
The
workspaceId
you are wanting to get the list of private locations from -
types[]
stringFilters the returned agent list to specific private location types. The following values are possible values:
small
- This type references the Shared private location typelarge
- This type references the Dedicated private location type
Also see: Pagination and Sorting
List Private Locations Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5db9c5640634d626d0665efc",
"name": "Example Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 300,
"slots": 5,
"type": "small",
"funcIds": [
"performance",
"functionalApi",
"proxyRecorder",
"mockServices",
"functionalGui",
"firefox:65",
"firefox:64",
"firefox:63",
"firefox:62",
"firefox:61",
"firefox:60",
"firefox:59",
"chrome:69",
"chrome:68",
"chrome:67",
"chrome:66",
"chrome:65"
],
"hidden": false,
"disabled": false,
"created": 1572455780,
"updated": 1572539142,
"accountId": 123456,
"shipsId": [
{
"$oid": "5db9c5ad71996f2cd40898b3"
},
{
"$oid": "5dbb081245137a19771c8253"
}
],
"workspacesId": [
123456
],
"ships": [
{
"id": "5db9c5ad71996f2cd40898b3",
"name": "New Agent",
"address": "10.123.1.123",
"publicIpAddress": "35.234.234.123",
"state": "idle",
"lastHeartBeat": 1572539183,
"lastCommandOutput": "",
"isLocked": false,
"installedVersion": "3.1.17-1526",
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 70527119360
},
"/var/lib/docker": {
"present": false
},
"/home/blazemeter": {
"present": true,
"freeSpace": 70527119360
}
},
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": false,
"info": {
"operatingSystem": "Ubuntu 16.04.6 LTS",
"operatingSystemType": "linux",
"memory": 7836102656,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "19.03.4",
"images": [
{
"Containers": -1,
"Created": 1572528902,
"Id": "sha256:2c5bf36dbce6ee135018cf6464c8d279d19e6c58b599c0996fa8743e871eaee9",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/service-mock:0.2.4-11",
"blazemeter/service-mock:latest"
],
"SharedSize": -1,
"Size": 164849267,
"VirtualSize": 164849267
},
{
"Containers": -1,
"Created": 1572456591,
"Id": "sha256:2f483a78ff30833b3041ff0bc153d44e22fa32d399ee52c17039e0173ee0aab5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/crane:3.1.17-1526",
"blazemeter/crane:latest"
],
"SharedSize": -1,
"Size": 140327991,
"VirtualSize": 140327991
},
{
"Containers": -1,
"Created": 1572456586,
"Id": "sha256:9196998214abb796f7087746246135d17b076ea877fd10882ee379d3591e27e5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_65.0.3325.181:2.1.0-266",
"blazemeter/charmander/chrome_65.0.3325.181:latest"
],
"SharedSize": -1,
"Size": 1456486511,
"VirtualSize": 1456486511
},
{
"Containers": -1,
"Created": 1572456554,
"Id": "sha256:3d18e73cb7b0ff57095e5445ec16a75b668c822e86c1ea286b4f5681c6a395cf",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
},
{
"Containers": -1,
"Created": 1572456436,
"Id": "sha256:c4eb412e5798c44da65ecb3158be3542e33cab266289e0294bbf7ec8802d65d8",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_60.0.2:2.1.0-266",
"blazemeter/charmander/firefox_60.0.2:latest"
],
"SharedSize": -1,
"Size": 1414052702,
"VirtualSize": 1414052702
},
{
"Containers": -1,
"Created": 1572456406,
"Id": "sha256:f2b81d8b717f86bf43d0292f7799cc66c6961a34406bf0a8c2486dad9c270ee0",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/proxy-recorder:1.10.1-850",
"blazemeter/proxy-recorder:latest"
],
"SharedSize": -1,
"Size": 599224295,
"VirtualSize": 599224295
},
{
"Containers": -1,
"Created": 1572456392,
"Id": "sha256:956e58859917127603d91b6a0a41033e203bf8a67f8287b9f348f32c1ddc4da6",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_61.0.2:2.1.0-266",
"blazemeter/charmander/firefox_61.0.2:latest"
],
"SharedSize": -1,
"Size": 1411259801,
"VirtualSize": 1411259801
},
{
"Containers": -1,
"Created": 1572456361,
"Id": "sha256:229f8d1f721a87f879ab2914b601661ccdf54e6cf199545be2ae7906989d5aea",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_62.0.3:2.1.0-266",
"blazemeter/charmander/firefox_62.0.3:latest"
],
"SharedSize": -1,
"Size": 1414549206,
"VirtualSize": 1414549206
},
{
"Containers": -1,
"Created": 1572456328,
"Id": "sha256:4b972899d53e4e810fc405995584a1eb492f06630e001b343db07e2e1b73f598",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_69.0.3497.92:2.1.0-266",
"blazemeter/charmander/chrome_69.0.3497.92:latest"
],
"SharedSize": -1,
"Size": 1467895980,
"VirtualSize": 1467895980
},
{
"Containers": -1,
"Created": 1572456295,
"Id": "sha256:3499ac54e173d86a670678f6c939d50db95f7a9acc408408d35dbf3571755c43",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"apm-image:1.3.0-826",
"apm-image:latest"
],
"SharedSize": -1,
"Size": 349033017,
"VirtualSize": 349033017
},
{
"Containers": -1,
"Created": 1572456287,
"Id": "sha256:741a0dfb03a60b2a92c7919ad2917061a81b0ce18f80b205458f1305cda2ef66",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_59.0.3:2.1.0-266",
"blazemeter/charmander/firefox_59.0.3:latest"
],
"SharedSize": -1,
"Size": 1417551431,
"VirtualSize": 1417551431
},
{
"Containers": -1,
"Created": 1572456254,
"Id": "sha256:7acc33b007cdfa24b43f9b472ce8609edac67bd0489d1c65ae4d4c60df5873cc",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_66.0.3359.181:2.1.0-266",
"blazemeter/charmander/chrome_66.0.3359.181:latest"
],
"SharedSize": -1,
"Size": 1456797479,
"VirtualSize": 1456797479
},
{
"Containers": -1,
"Created": 1572456220,
"Id": "sha256:fc74752e5c679ea92c9c8debb8a51fc25950535fab78ae9ae7494dbc80aa2e56",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.17.5-1053",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 5116339960,
"VirtualSize": 5116339960
},
{
"Containers": -1,
"Created": 1572456106,
"Id": "sha256:5cc41950e3e7151227ba092c99461ddac2c0775159c4c71169bf3327b410af88",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_68.0.3440.84:2.1.0-266",
"blazemeter/charmander/chrome_68.0.3440.84:latest"
],
"SharedSize": -1,
"Size": 1463143595,
"VirtualSize": 1463143595
},
{
"Containers": -1,
"Created": 1572456072,
"Id": "sha256:50ec6f7ad24d01e9e181314951f72b945483cfb89720174682eb93a3c500f59e",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_67.0.3396.79:2.1.0-266",
"blazemeter/charmander/chrome_67.0.3396.79:latest"
],
"SharedSize": -1,
"Size": 1457708938,
"VirtualSize": 1457708938
},
{
"Containers": -1,
"Created": 1572456036,
"Id": "sha256:80bd52151d5cd55cf1cd8bd64e6d959195a2759734eef3aab3aa9965963adc50",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_65.0.2:2.1.0-266",
"blazemeter/charmander/firefox_65.0.2:latest"
],
"SharedSize": -1,
"Size": 1450140743,
"VirtualSize": 1450140743
},
{
"Containers": -1,
"Created": 1572456004,
"Id": "sha256:162a133de9627a628b231349e28d341d4c36a466be76c5ab0e91555997b1ffe7",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_63.0.1:2.1.0-266",
"blazemeter/charmander/firefox_63.0.1:latest"
],
"SharedSize": -1,
"Size": 1419334668,
"VirtualSize": 1419334668
},
{
"Containers": -1,
"Created": 1572455968,
"Id": "sha256:e579437c8f0c793f5af786a24c9e53409da0a03b34ebef4f902a2d299e1b8e0a",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_64.0.2:2.1.0-266",
"blazemeter/charmander/firefox_64.0.2:latest"
],
"SharedSize": -1,
"Size": 1439905832,
"VirtualSize": 1439905832
}
]
}
}
},
"isAutoUpdate": true,
"hasJetlag": true,
"hasJetpack": true,
"useMasterFiles": true,
"uptime": 616003,
"baseUrl": "https://a.blazemeter.com",
"hasProxy": false,
"verifySSL": true,
"created": 1572455853,
"updated": 1572539183,
"updaterStatus": {
"status": "success",
"lastUpdateCheck": 1572536148,
"nextUpdateCheck": 1572539748,
"lastUpdate": 1572528902
},
"ts": 1572539183
}
]
}
],
"request_id": "5dbb0b48f06fa"
}
To see a breakdown of the attributes, please see The Private Location Object section.
Private Location Details
Private Location Details
curl 'https://a.blazemeter.com/api/v4/private-locations/5db9c5640634d626d0665efc' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations/{harborId}
To return the details of a private location, a harborId
is required. The sample code returns the details of the private location with a harborId
of 5db9c5640634d626d0665efc
. Use the actual ID values for the private locations to return the details of its private location.
Private Location Details Response Attributes
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": "5db9c5640634d626d0665efc",
"name": "Example Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 300,
"slots": 5,
"type": "small",
"funcIds": [
"performance",
"functionalApi",
"proxyRecorder",
"mockServices",
"functionalGui",
"firefox:65",
"firefox:64",
"firefox:63",
"firefox:62",
"firefox:61",
"firefox:60",
"firefox:59",
"chrome:69",
"chrome:68",
"chrome:67",
"chrome:66",
"chrome:65"
],
"hidden": false,
"disabled": false,
"created": 1572455780,
"updated": 1572539142,
"accountId": 123456,
"shipsId": [
{
"$oid": "5db9c5ad71996f2cd40898b3"
},
{
"$oid": "5dbb081245137a19771c8253"
}
],
"workspacesId": [
123456
],
"ships": [
{
"id": "5db9c5ad71996f2cd40898b3",
"name": "New Agent",
"address": "10.123.1.123",
"publicIpAddress": "35.234.234.123",
"state": "idle",
"lastHeartBeat": 1572539183,
"lastCommandOutput": "",
"isLocked": false,
"installedVersion": "3.1.17-1526",
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 70527119360
},
"/var/lib/docker": {
"present": false
},
"/home/blazemeter": {
"present": true,
"freeSpace": 70527119360
}
},
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": false,
"info": {
"operatingSystem": "Ubuntu 16.04.6 LTS",
"operatingSystemType": "linux",
"memory": 7836102656,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "19.03.4",
"images": [
{
"Containers": -1,
"Created": 1572528902,
"Id": "sha256:2c5bf36dbce6ee135018cf6464c8d279d19e6c58b599c0996fa8743e871eaee9",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/service-mock:0.2.4-11",
"blazemeter/service-mock:latest"
],
"SharedSize": -1,
"Size": 164849267,
"VirtualSize": 164849267
},
{
"Containers": -1,
"Created": 1572456591,
"Id": "sha256:2f483a78ff30833b3041ff0bc153d44e22fa32d399ee52c17039e0173ee0aab5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/crane:3.1.17-1526",
"blazemeter/crane:latest"
],
"SharedSize": -1,
"Size": 140327991,
"VirtualSize": 140327991
},
{
"Containers": -1,
"Created": 1572456586,
"Id": "sha256:9196998214abb796f7087746246135d17b076ea877fd10882ee379d3591e27e5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_65.0.3325.181:2.1.0-266",
"blazemeter/charmander/chrome_65.0.3325.181:latest"
],
"SharedSize": -1,
"Size": 1456486511,
"VirtualSize": 1456486511
},
{
"Containers": -1,
"Created": 1572456554,
"Id": "sha256:3d18e73cb7b0ff57095e5445ec16a75b668c822e86c1ea286b4f5681c6a395cf",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
},
{
"Containers": -1,
"Created": 1572456436,
"Id": "sha256:c4eb412e5798c44da65ecb3158be3542e33cab266289e0294bbf7ec8802d65d8",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_60.0.2:2.1.0-266",
"blazemeter/charmander/firefox_60.0.2:latest"
],
"SharedSize": -1,
"Size": 1414052702,
"VirtualSize": 1414052702
},
{
"Containers": -1,
"Created": 1572456406,
"Id": "sha256:f2b81d8b717f86bf43d0292f7799cc66c6961a34406bf0a8c2486dad9c270ee0",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/proxy-recorder:1.10.1-850",
"blazemeter/proxy-recorder:latest"
],
"SharedSize": -1,
"Size": 599224295,
"VirtualSize": 599224295
},
{
"Containers": -1,
"Created": 1572456392,
"Id": "sha256:956e58859917127603d91b6a0a41033e203bf8a67f8287b9f348f32c1ddc4da6",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_61.0.2:2.1.0-266",
"blazemeter/charmander/firefox_61.0.2:latest"
],
"SharedSize": -1,
"Size": 1411259801,
"VirtualSize": 1411259801
},
{
"Containers": -1,
"Created": 1572456361,
"Id": "sha256:229f8d1f721a87f879ab2914b601661ccdf54e6cf199545be2ae7906989d5aea",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_62.0.3:2.1.0-266",
"blazemeter/charmander/firefox_62.0.3:latest"
],
"SharedSize": -1,
"Size": 1414549206,
"VirtualSize": 1414549206
},
{
"Containers": -1,
"Created": 1572456328,
"Id": "sha256:4b972899d53e4e810fc405995584a1eb492f06630e001b343db07e2e1b73f598",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_69.0.3497.92:2.1.0-266",
"blazemeter/charmander/chrome_69.0.3497.92:latest"
],
"SharedSize": -1,
"Size": 1467895980,
"VirtualSize": 1467895980
},
{
"Containers": -1,
"Created": 1572456295,
"Id": "sha256:3499ac54e173d86a670678f6c939d50db95f7a9acc408408d35dbf3571755c43",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"apm-image:1.3.0-826",
"apm-image:latest"
],
"SharedSize": -1,
"Size": 349033017,
"VirtualSize": 349033017
},
{
"Containers": -1,
"Created": 1572456287,
"Id": "sha256:741a0dfb03a60b2a92c7919ad2917061a81b0ce18f80b205458f1305cda2ef66",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_59.0.3:2.1.0-266",
"blazemeter/charmander/firefox_59.0.3:latest"
],
"SharedSize": -1,
"Size": 1417551431,
"VirtualSize": 1417551431
},
{
"Containers": -1,
"Created": 1572456254,
"Id": "sha256:7acc33b007cdfa24b43f9b472ce8609edac67bd0489d1c65ae4d4c60df5873cc",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_66.0.3359.181:2.1.0-266",
"blazemeter/charmander/chrome_66.0.3359.181:latest"
],
"SharedSize": -1,
"Size": 1456797479,
"VirtualSize": 1456797479
},
{
"Containers": -1,
"Created": 1572456220,
"Id": "sha256:fc74752e5c679ea92c9c8debb8a51fc25950535fab78ae9ae7494dbc80aa2e56",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.17.5-1053",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 5116339960,
"VirtualSize": 5116339960
},
{
"Containers": -1,
"Created": 1572456106,
"Id": "sha256:5cc41950e3e7151227ba092c99461ddac2c0775159c4c71169bf3327b410af88",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_68.0.3440.84:2.1.0-266",
"blazemeter/charmander/chrome_68.0.3440.84:latest"
],
"SharedSize": -1,
"Size": 1463143595,
"VirtualSize": 1463143595
},
{
"Containers": -1,
"Created": 1572456072,
"Id": "sha256:50ec6f7ad24d01e9e181314951f72b945483cfb89720174682eb93a3c500f59e",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_67.0.3396.79:2.1.0-266",
"blazemeter/charmander/chrome_67.0.3396.79:latest"
],
"SharedSize": -1,
"Size": 1457708938,
"VirtualSize": 1457708938
},
{
"Containers": -1,
"Created": 1572456036,
"Id": "sha256:80bd52151d5cd55cf1cd8bd64e6d959195a2759734eef3aab3aa9965963adc50",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_65.0.2:2.1.0-266",
"blazemeter/charmander/firefox_65.0.2:latest"
],
"SharedSize": -1,
"Size": 1450140743,
"VirtualSize": 1450140743
},
{
"Containers": -1,
"Created": 1572456004,
"Id": "sha256:162a133de9627a628b231349e28d341d4c36a466be76c5ab0e91555997b1ffe7",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_63.0.1:2.1.0-266",
"blazemeter/charmander/firefox_63.0.1:latest"
],
"SharedSize": -1,
"Size": 1419334668,
"VirtualSize": 1419334668
},
{
"Containers": -1,
"Created": 1572455968,
"Id": "sha256:e579437c8f0c793f5af786a24c9e53409da0a03b34ebef4f902a2d299e1b8e0a",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_64.0.2:2.1.0-266",
"blazemeter/charmander/firefox_64.0.2:latest"
],
"SharedSize": -1,
"Size": 1439905832,
"VirtualSize": 1439905832
}
]
}
}
},
"isAutoUpdate": true,
"hasJetlag": true,
"hasJetpack": true,
"useMasterFiles": true,
"uptime": 616003,
"baseUrl": "https://a.blazemeter.com",
"hasProxy": false,
"verifySSL": true,
"created": 1572455853,
"updated": 1572539183,
"updaterStatus": {
"status": "success",
"lastUpdateCheck": 1572536148,
"nextUpdateCheck": 1572539748,
"lastUpdate": 1572528902
},
"ts": 1572539183
}
]
}
],
"request_id": "5dbb0b48f06fa"
}
To see a breakdown of the attributes, please see The Private Location Object section.
Update a Private Location
Update a Private Location
curl 'https://a.blazemeter.com/api/v4/private-locations/5b0323b3c648be3b4c7b23c8' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"My Private Location"}'
API Explorer: /private-locations/{harborId}
To update a private location, you will need to know the harborId
. The sample code updates a private location with a harborId
of 5b0323b3c648be3b4c7b23c8
with a new private location name My Private Location
. To use this API, replace the harborId
of 5b0323b3c648be3b4c7b23c8
with your harborId
and change the name
attribute a name of your choosing.
Update a Private Location Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Update a Private Location Update a Private Location PATCH Body (JSON)
{
"name":"My Private Location"
}
Attributes
-
name
stringThe name of the private location
Update a Private Location Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d1641a21726d36d4632fd34",
"name": "My Private Location",
"userId": 123456,
"consoleXms": 1024,
"consoleXmx": 4096,
"engineXms": 1024,
"engineXmx": 4096,
"threadsPerEngine": 1000,
"slots": 1,
"type": "large",
"funcIds": [
"performance"
],
"hidden": false,
"overrideCPU": 2,
"overrideMemory": 4096,
"created": 1561739682,
"updated": 1561739682,
"accountId": 123456,
"workspacesId": [
123456
],
"ships": []
},
"request_id": "5d1641a1c3fd1"
}
To see a breakdown of the attributes, please see The Private Location Object section.
List Agents
List Agents
curl 'https://a.blazemeter.com/api/v4/private-locations/5db9c5640634d626d0665efc/servers' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations/{harborId}/servers
To return a list of created agents, a harborId
is required. The sample code returns a list of agents within a harborId
of 5db9c5ad71996f2cd40898b3
. Use the actual ID value for the private location to return the list of its agents.
The returned list contains each agent's shipId
(shows up as id
in the response) and configuration.
List Agents Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": [
{
"id": "5db9c5ad71996f2cd40898b3",
"name": "New Agent",
"address": "10.128.0.104",
"publicIpAddress": "35.222.210.178",
"state": "idle",
"lastHeartBeat": 1572550685,
"lastCommandOutput": "",
"isLocked": false,
"created": 1572455853,
"updated": 1572550685,
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 70525837312
},
"/var/lib/docker": {
"present": false
},
"/home/blazemeter": {
"present": true,
"freeSpace": 70525837312
}
},
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": false,
"info": {
"operatingSystem": "Ubuntu 16.04.6 LTS",
"operatingSystemType": "linux",
"memory": 7836102656,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "19.03.4",
"images": [
{
"Containers": -1,
"Created": 1572528902,
"Id": "sha256:2c5bf36dbce6ee135018cf6464c8d279d19e6c58b599c0996fa8743e871eaee9",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/service-mock:0.2.4-11",
"blazemeter/service-mock:latest"
],
"SharedSize": -1,
"Size": 164849267,
"VirtualSize": 164849267
},
{
"Containers": -1,
"Created": 1572456591,
"Id": "sha256:2f483a78ff30833b3041ff0bc153d44e22fa32d399ee52c17039e0173ee0aab5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/crane:3.1.17-1526",
"blazemeter/crane:latest"
],
"SharedSize": -1,
"Size": 140327991,
"VirtualSize": 140327991
},
{
"Containers": -1,
"Created": 1572456586,
"Id": "sha256:9196998214abb796f7087746246135d17b076ea877fd10882ee379d3591e27e5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_65.0.3325.181:2.1.0-266",
"blazemeter/charmander/chrome_65.0.3325.181:latest"
],
"SharedSize": -1,
"Size": 1456486511,
"VirtualSize": 1456486511
},
{
"Containers": -1,
"Created": 1572456554,
"Id": "sha256:3d18e73cb7b0ff57095e5445ec16a75b668c822e86c1ea286b4f5681c6a395cf",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
},
{
"Containers": -1,
"Created": 1572456436,
"Id": "sha256:c4eb412e5798c44da65ecb3158be3542e33cab266289e0294bbf7ec8802d65d8",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_60.0.2:2.1.0-266",
"blazemeter/charmander/firefox_60.0.2:latest"
],
"SharedSize": -1,
"Size": 1414052702,
"VirtualSize": 1414052702
},
{
"Containers": -1,
"Created": 1572456406,
"Id": "sha256:f2b81d8b717f86bf43d0292f7799cc66c6961a34406bf0a8c2486dad9c270ee0",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/proxy-recorder:1.10.1-850",
"blazemeter/proxy-recorder:latest"
],
"SharedSize": -1,
"Size": 599224295,
"VirtualSize": 599224295
},
{
"Containers": -1,
"Created": 1572456392,
"Id": "sha256:956e58859917127603d91b6a0a41033e203bf8a67f8287b9f348f32c1ddc4da6",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_61.0.2:2.1.0-266",
"blazemeter/charmander/firefox_61.0.2:latest"
],
"SharedSize": -1,
"Size": 1411259801,
"VirtualSize": 1411259801
},
{
"Containers": -1,
"Created": 1572456361,
"Id": "sha256:229f8d1f721a87f879ab2914b601661ccdf54e6cf199545be2ae7906989d5aea",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_62.0.3:2.1.0-266",
"blazemeter/charmander/firefox_62.0.3:latest"
],
"SharedSize": -1,
"Size": 1414549206,
"VirtualSize": 1414549206
},
{
"Containers": -1,
"Created": 1572456328,
"Id": "sha256:4b972899d53e4e810fc405995584a1eb492f06630e001b343db07e2e1b73f598",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_69.0.3497.92:2.1.0-266",
"blazemeter/charmander/chrome_69.0.3497.92:latest"
],
"SharedSize": -1,
"Size": 1467895980,
"VirtualSize": 1467895980
},
{
"Containers": -1,
"Created": 1572456295,
"Id": "sha256:3499ac54e173d86a670678f6c939d50db95f7a9acc408408d35dbf3571755c43",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"apm-image:1.3.0-826",
"apm-image:latest"
],
"SharedSize": -1,
"Size": 349033017,
"VirtualSize": 349033017
},
{
"Containers": -1,
"Created": 1572456287,
"Id": "sha256:741a0dfb03a60b2a92c7919ad2917061a81b0ce18f80b205458f1305cda2ef66",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_59.0.3:2.1.0-266",
"blazemeter/charmander/firefox_59.0.3:latest"
],
"SharedSize": -1,
"Size": 1417551431,
"VirtualSize": 1417551431
},
{
"Containers": -1,
"Created": 1572456254,
"Id": "sha256:7acc33b007cdfa24b43f9b472ce8609edac67bd0489d1c65ae4d4c60df5873cc",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_66.0.3359.181:2.1.0-266",
"blazemeter/charmander/chrome_66.0.3359.181:latest"
],
"SharedSize": -1,
"Size": 1456797479,
"VirtualSize": 1456797479
},
{
"Containers": -1,
"Created": 1572456220,
"Id": "sha256:fc74752e5c679ea92c9c8debb8a51fc25950535fab78ae9ae7494dbc80aa2e56",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.17.5-1053",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 5116339960,
"VirtualSize": 5116339960
},
{
"Containers": -1,
"Created": 1572456106,
"Id": "sha256:5cc41950e3e7151227ba092c99461ddac2c0775159c4c71169bf3327b410af88",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_68.0.3440.84:2.1.0-266",
"blazemeter/charmander/chrome_68.0.3440.84:latest"
],
"SharedSize": -1,
"Size": 1463143595,
"VirtualSize": 1463143595
},
{
"Containers": -1,
"Created": 1572456072,
"Id": "sha256:50ec6f7ad24d01e9e181314951f72b945483cfb89720174682eb93a3c500f59e",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/chrome_67.0.3396.79:2.1.0-266",
"blazemeter/charmander/chrome_67.0.3396.79:latest"
],
"SharedSize": -1,
"Size": 1457708938,
"VirtualSize": 1457708938
},
{
"Containers": -1,
"Created": 1572456036,
"Id": "sha256:80bd52151d5cd55cf1cd8bd64e6d959195a2759734eef3aab3aa9965963adc50",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_65.0.2:2.1.0-266",
"blazemeter/charmander/firefox_65.0.2:latest"
],
"SharedSize": -1,
"Size": 1450140743,
"VirtualSize": 1450140743
},
{
"Containers": -1,
"Created": 1572456004,
"Id": "sha256:162a133de9627a628b231349e28d341d4c36a466be76c5ab0e91555997b1ffe7",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_63.0.1:2.1.0-266",
"blazemeter/charmander/firefox_63.0.1:latest"
],
"SharedSize": -1,
"Size": 1419334668,
"VirtualSize": 1419334668
},
{
"Containers": -1,
"Created": 1572455968,
"Id": "sha256:e579437c8f0c793f5af786a24c9e53409da0a03b34ebef4f902a2d299e1b8e0a",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/charmander/firefox_64.0.2:2.1.0-266",
"blazemeter/charmander/firefox_64.0.2:latest"
],
"SharedSize": -1,
"Size": 1439905832,
"VirtualSize": 1439905832
}
]
}
}
},
"hasJetlag": true,
"ts": 1572550685
}
],
"request_id": "5dbb382ca437f"
}
To see a breakdown of the attributes, please see The Server Object section.
Agent Details
Agent Details
curl 'https://a.blazemeter.com/api/v4/private-locations/5db9c5640634d626d0665efc/servers/5db9c5640634d626d0665efc' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations/{harborId}/servers/{shipId}
To return the details of an agent, a harborId
and a shipId
is required. The sample code returns the details of the agent with a harborId
of 5db9c5640634d626d0665efc
and a shipId
of 5db9c5640634d626d0665efc
. Use the actual ID values for the private location and agent to return the details of the agent.
Agent Details Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": "5da78c8240055536a5297345",
"name": "New Centos Agent",
"address": "10.128.0.101",
"publicIpAddress": "35.223.16.91",
"state": "detached",
"lastHeartBeat": 1572275227,
"lastCommandOutput": "",
"isLocked": false,
"installedVersion": "3.1.15-1514",
"hostInfo": {
"diskSpace": {
"/tmp": {
"present": true,
"freeSpace": 88910917632
},
"/var/lib/docker": {
"present": false
},
"/home/blazemeter": {
"present": true,
"freeSpace": 88910917632
}
},
"containerManager": {
"type": "DockerManager",
"usingDockerRegistry": false,
"info": {
"operatingSystem": "CentOS Linux 7 (Core)",
"operatingSystemType": "linux",
"memory": 7672881152,
"cpus": 2,
"dockerRootDir": "/var/lib/docker",
"dockerVersion": "19.03.4",
"images": [
{
"Containers": -1,
"Created": 1571261948,
"Id": "sha256:a86d5359539a74870ef1e1d27014522c583dba3f7fb36d08f4ebe3c03400a5dd",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter:1.4.1-92",
"blazemeter:latest"
],
"SharedSize": -1,
"Size": 5579810429,
"VirtualSize": 5579810429
},
{
"Containers": -1,
"Created": 1571261816,
"Id": "sha256:2d84898fc32397cb934eec3b1de9fe5ddb06a3ed58de18435850259b31272589",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/proxy-recorder:1.10.1-850",
"blazemeter/proxy-recorder:latest"
],
"SharedSize": -1,
"Size": 599224295,
"VirtualSize": 599224295
},
{
"Containers": -1,
"Created": 1571261802,
"Id": "sha256:f78b261dc02cbedebeaa0be0a61e8c39170dd7d3c19c19139859f8cc3f9bbbdc",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/service-mock:0.2.4-11",
"blazemeter/service-mock:latest"
],
"SharedSize": -1,
"Size": 164849267,
"VirtualSize": 164849267
},
{
"Containers": -1,
"Created": 1571261797,
"Id": "sha256:65059e5c63d8d77571d6ef02f89b1d54d439cef040851da349d5e6aca68ba01d",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"chrome_69.0.3497.92:latest",
"chrome_69.0.3497.92_charmander_1.1.7.231:chrome_69.0.3497.92_charmander_1.1.7.231",
"chrome_69.0.3497.92_charmander_1.1.7.231:latest"
],
"SharedSize": -1,
"Size": 1410761196,
"VirtualSize": 1410761196
},
{
"Containers": -1,
"Created": 1571261761,
"Id": "sha256:d0de7e20f9ebad580979ec296edc90b5a79374b6007b7cc3375128fbca198ac5",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"apm-image:1.3.0-826",
"apm-image:latest"
],
"SharedSize": -1,
"Size": 349033017,
"VirtualSize": 349033017
},
{
"Containers": -1,
"Created": 1571261737,
"Id": "sha256:84a22bc8c2dcc63c31c4c60b526ddd87a44f3beb79b4c9d3358c2c07751a84ae",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"taurus-cloud:1.17.4-1049",
"taurus-cloud:latest"
],
"SharedSize": -1,
"Size": 5115062238,
"VirtualSize": 5115062238
},
{
"Containers": -1,
"Created": 1571261635,
"Id": "sha256:220e832427b069a1011e2f73370725c7f755a51a0b1149691af03d30fb4a0967",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"blazemeter/crane:3.1.15-1514",
"blazemeter/crane:latest"
],
"SharedSize": -1,
"Size": 136891718,
"VirtualSize": 136891718
},
{
"Containers": -1,
"Created": 1571261626,
"Id": "sha256:65debd84b2d95ddc61e57080484c2c4eb8b80b22d629e8c6e146ade588cdf0f3",
"Labels": null,
"ParentId": "",
"RepoDigests": null,
"RepoTags": [
"firefox_65.0.2:latest",
"firefox_65.0.2_charmander_1.1.7.231:firefox_65.0.2_charmander_1.1.7.231",
"firefox_65.0.2_charmander_1.1.7.231:latest"
],
"SharedSize": -1,
"Size": 1393006212,
"VirtualSize": 1393006212
}
]
}
}
},
"isAutoUpdate": true,
"hasJetlag": true,
"hasJetpack": true,
"useMasterFiles": true,
"uptime": 1013843,
"baseUrl": "https://a.blazemeter.com",
"hasProxy": false,
"verifySSL": true,
"created": 1571261570,
"updated": 1593180006,
"updaterStatus": {
"status": "success",
"lastUpdateCheck": 1572273500,
"nextUpdateCheck": 1572277100
},
"ts": 1572275227
},
"request_id": "5ef5fff2b6387"
}
To see a breakdown of the attributes, please see The Agent Object section.
Update an Agent
Update an Agent
curl 'https://a.blazemeter.com/api/v4/private-locations/5b0323b3c648be3b4c7b23c8/servers/5d2657219583d81adc3778b4' \
-X PATCH \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret' \
-d '{"name":"My New Agent"}'
API Explorer: /private-locations/{harborId}/servers/{shipId}
To update an agent, you will need to know the harborId
and the shipId
. The sample code adds an agent to a private location with a harborId
of 5b0323b3c648be3b4c7b23c8
and an agent with the shipId
of 5d2657219583d81adc3778b4
with a new agent name My Agent
. To use this API, replace the harborId
of 5b0323b3c648be3b4c7b23c8
with your harborId
, replace the shipId
of 5d2657219583d81adc3778b4
with your shipId
and give the name
attribute a name of your choosing and, optionally, the IP of your machine.
Update an Agent Request Attributes
The following JSON sample provides a more readable version of the content contained in the above
curl
example. This example represents the attributes and values contained in the-d
flag of thecurl
example.Update an Agent Update an Agent PATCH Body (JSON)
{
"name": "My New Agent"
}
Attributes
-
name
stringThe name of the agent
Update an Agent Response Attributes
Response 201 Created
{
"api_version": 4,
"error": null,
"result": {
"id": "5d2657219583d81adc3778b4",
"name": "My New Agent",
"address": "123.12.12.123",
"state": "empty",
"hasJetlag": false,
"created": 1562793761,
"updated": 1562793761,
"ts": null
},
"request_id": "5d265720cf008"
}
To see a breakdown of the attributes, please see The Server Object section.
Private Location Image Versions
Private Location Image Versions
curl 'https://a.blazemeter.com/api/v4/private-locations/5db9c5640634d626d0665efc/ships/5b0323b9c85b7cbd587b23c7/versions' \
--user 'api_key_id:api_key_secret'
API Explorer: /private-locations/{harborId}/ships/{shipId}/versions
To return a list of the latest image versions, a harborId
and a shipId
is required. The sample code returns a list of images available within a harborId
of 5db9c5ad71996f2cd40898b3
and shipId
of 5b0323b9c85b7cbd587b23c7
. Use the actual ID value for the private location and agent to return the list of the current image versions.
Private Location Image Versions Response Attributes
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"resources": {
"apmDockerImage": {
"dockerTag": "apm-image",
"type": "dockerImage",
"url": "https://blazemeter-images.s3.amazonaws.com/apm/1.3.0-826.tar",
"version": "1.3.0-826",
"imageRelativePath": "blazemeter/apm",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/crane": {
"dockerTag": "blazemeter/crane",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/crane/3.1.18-1532.tar",
"version": "3.1.18-1532",
"imageRelativePath": "blazemeter/crane",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"engineDockerImage": {
"dockerTag": "blazemeter",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/v3/v3-engine-packer-1551185708700-docker.tar",
"version": "1.4.1-92",
"imageRelativePath": "blazemeter/v3",
"blacklist": [
"disableOTC"
],
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"taurusEngineDockerImage": {
"dockerTag": "taurus-cloud",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/v4/1.17.5-1053.tar",
"version": "1.17.5-1053",
"imageRelativePath": "blazemeter/v4",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/proxy-recorder": {
"dockerTag": "blazemeter/proxy-recorder",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/proxy-recorder/1.10.1-850.tar",
"version": "1.10.1-850",
"imageRelativePath": "blazemeter/proxy-recorder",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/sv-bridge": {
"dockerTag": "blazemeter/sv-bridge",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/sv-bridge/0.1.0.tar",
"version": "0.1.0",
"imageRelativePath": "blazemeter/sv-bridge",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/service-mock": {
"dockerTag": "blazemeter/service-mock",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/service-mock/0.2.4-11.tar",
"version": "0.2.4-11",
"imageRelativePath": "blazemeter/service-mock",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/charmander/firefox/65": {
"dockerTag": "blazemeter/charmander/firefox_65.0.2",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/charmander/2.1.0-266/firefox/firefox_65.0.2.tar",
"version": "2.1.0-266",
"imageRelativePath": "blazemeter/charmander/firefox_65.0.2",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
},
"blazemeter/charmander/chrome/69": {
"dockerTag": "blazemeter/charmander/chrome_69.0.3497.92",
"type": "dockerImage",
"url": "https://s3.amazonaws.com/blazemeter-images/charmander/2.1.0-266/chrome/chrome_69.0.3497.92.tar",
"version": "2.1.0-266",
"imageRelativePath": "blazemeter/charmander/chrome_69.0.3497.92",
"validHarborTypes": [
"small",
"large",
"marathon",
"functional"
]
}
}
},
"request_id": "5dc1d999e6c24"
}
Attributes
-
resources
objectThe image resource details
-
apmDockerImage
objectThe image for implementing APM integrations through a private location
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/crane
objectThe image for the agent installation
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
engineDockerImage
objectThe image used for running legacy BlazeMeter tests
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
taurusEngineDockerImage
objectThe image used to run performance and functional tests
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/proxy-recorder
objectThe image used to run the proxy recorder on an agent
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/sv-bridge
objectThe image used to bridge BlazeMeter mock services to Service Virtualization
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/service-mock
objectThe image used to run mock services
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/charmander/firefox/65
objectThe image used for running GUI functional tests on Firefox 65. There can be numerous version numbers for Firefox (see the list for details)
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
blazemeter/charmander/chrome/69
objectThe image that runs GUI functional in Chrome 69. There can be numerous version numbers for Chrome (see the list for details)
-
dockerTag
stringThe Docker tag the image will use on the agent machine
-
type
stringThe type of image this image is. Currently, all use
dockerImage
-
url
stringThe download URL of the image
-
version
stringThe current version of the image
-
imageRelativePath
stringA reference to the path this image is located
-
validHarborTypes
arrayList of harbor types that support this image. Currently, only the
small
andlarge
types are used
-
-
Delete a Workspace in Private Location
Delete a Workspace in Private Location
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34/workspaces/234567' \
-X DELETE \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 204 No content
API Explorer: /private-locations/{harborId}/workspaces/{workspaceId}
To delete a workspace from a private location, DELETE the provided configuration (you will need the harborId
and workspaceId
). The sample code deletes the workspaceId
of 234567
from the private location with harborId
of 5d1641a21726d36d4632fd34
. To use this API, replace the workspaceId
of 234567
with your workspaceId
and replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
.
Delete an Agent
Delete an Agent
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34/servers/5d2657219583d81adc3778b4' \
-X DELETE \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 204 No Content
API Explorer: /private-locations/{harborId}/servers/{shipId}
To delete an agent, DELETE the provided configuration (you will need the harborId
and shipId
). The sample code deletes the shipId
of 5d2657219583d81adc3778b4
from the private location with harborId
of 5d1641a21726d36d4632fd34
. To use this API, replace the shipId
of 5d2657219583d81adc3778b4
with your shipId
and replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
.
Delete a Private Location
Delete a Private Location
curl 'https://a.blazemeter.com/api/v4/private-locations/5d1641a21726d36d4632fd34' \
-X DELETE \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 204 No Content
API Explorer: /private-locations/{harborId}
To delete a private location, DELETE the provided configuration (you will need the harborId
). The sample code deletes the private location with harborId
of 5d1641a21726d36d4632fd34
. To use this API, replace the harborId
of 5d1641a21726d36d4632fd34
with your harborId
.
Appendix
This section contains additional details you may find useful as you progress in your use of the BlazeMeter API beyond typical use cases.
Pagination
Setting Pagination through Tests
curl 'https://a.blazemeter.com/api/v4/tests?projectId=123456&skip=10&limit=2' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"limit": 2,
"skip": 10,
"total": 450,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 1234567,
"name": "Test 2",
"isNewTest": true,
"userId": 123456,
"created": 1550767182,
"updated": 1550767182,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"scenario": "default-scenario"
}
],
"shouldSendReportEmail": false,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"executionType": "taurusCloud",
"threads": 500,
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
}
},
{
"id": 2345678,
"name": "My Test",
"isNewTest": true,
"userId": 123456,
"lastRunTime": 1550710526,
"created": 1550702524,
"updated": 1550714475,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 60000,
"executor": "jmeter",
"holdFor": "30m",
"locations": {
"us-east-1": 60000
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "30m",
"steps": 0
}
],
"executions": [
{
"concurrency": 60000,
"holdFor": "30m",
"rampUp": "30m",
"steps": 0,
"locations": {
"us-east-1": 60000
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6630973"
}
],
"shouldSendReportEmail": false,
"projectId": 123456,
"lastUpdatedById": 123456,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 300,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 300,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto"
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
}
}
]
}
Control the pagination of returned results using the skip
and limit
parameters.
Use
skip
to set the first item to return. For example, to start on the eleventh item, setskip=10
Use
limit
to set the maximum number of items returned. For example, to limit the number of items returned to 20 items, setlimit=20
The sample code sets pagination for items with a projectId
of 123456
. Use the actual ID values of the project or workspace to update their pagination.
Sorting
Setting Pagination through Tests
curl 'https://a.blazemeter.com/api/v4/tests?projectId=123456&sort[]=-updated' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"limit": 10,
"skip": 0,
"total": 2,
"hidden": 0,
"api_version": 4,
"error": null,
"result": [
{
"id": 6776178,
"name": "Dynatrace APM Test - Copy",
"isNewTest": true,
"userId": 344260,
"created": 1555365941,
"updated": 1555365941,
"creatorClientId": "gui",
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"rampUp": "1m",
"steps": 0
}
],
"executions": [
{
"concurrency": 20,
"holdFor": "19m",
"rampUp": "1m",
"steps": 0,
"locations": {
"us-east-1": 20
},
"locationsPercents": {
"us-east-1": 100
},
"executor": "jmeter",
"scenario": "default-scenario-6776177"
}
],
"shouldSendReportEmail": false,
"projectId": 169410,
"configuration": {
"type": "taurus",
"canControlRampup": false,
"targetThreads": 500,
"executionType": "taurusCloud",
"scriptType": "jmeter",
"threads": 500,
"filename": "Dummy.jmx",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
}
},
{
"id": 6728358,
"name": "Taurus YAML Configuration Test",
"isNewTest": true,
"userId": 344260,
"lastRunTime": 1553625706,
"created": 1553625654,
"updated": 1553627839,
"creatorClientId": "gui",
"overrideExecutions": [],
"executions": [
{
"concurrency": 5,
"holdFor": "180s",
"rampUp": "1s",
"locations": {
"us-east-1": 1
},
"locationsWeighted": true,
"executor": "jmeter",
"scenario": "simple"
}
],
"shouldSendReportEmail": false,
"projectId": 169410,
"lastUpdatedById": 344260,
"configuration": {
"type": "taurus",
"dedicatedIpsEnabled": false,
"executionType": "taurusCloud",
"scriptType": "taurus",
"threads": 500,
"filename": "Dummy.yml",
"testMode": "",
"plugins": {
"jmeter": {
"version": "auto",
"consoleArgs": "",
"enginesArgs": ""
},
"thresholds": {
"thresholds": [],
"ignoreRampup": false,
"slidingWindow": false
}
}
}
}
]
}
Control the sort of returned results using the sort[]
parameter.
Use sort[]
to set the attribute you want to sort the response with. The attributes to focus on are updated
, created
, or name
. If you place just the attribute as is (i.e. name
), it will sort from least to greatest, or alphabetical order. If you want the opposite behavior, you can add a -
before the attribute (i.e. -name
). For example, to sort by updated from newest to oldest, set sort[]=-updated
The sample code sets the sorting for items with a projectId
of 123456
by most recently updated to oldest update.
Private Cloud
Private Cloud users will have a slightly different experience when using the BlazeMeter APIs. These differences include the base URL that is used, API differences for specific cases, and some differences in the response.
Using APIs in a Private Cloud Environment
Private Cloud Environment Example
curl 'https://your.internal.blazemeter.net/api/v4/user' \
-H 'Content-Type: application/json' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"api_version": 4,
"error": null,
"result": {
"id": 123456,
"email": "my.name@my_email.com",
"access": 1522676762,
"login": 1521724222,
"firstName": "my",
"lastName": "name",
"timezone": 0,
"enabled": true,
"roles": [
"user",
"new-billing",
"authenticated"
]
}
}
}
The majority of the APIs present in this documentation will work the same as they do in the public version, with the main difference being the base URL that is used. Instead of https://a.blazemeter.com
, users will need to use the internal URL used to access the Private Cloud instance.
In the example provided, the Private Cloud instance uses the URL of https://your.internal.blazemeter.net
. We replace the https://a.blazemeter.com
URL with the internal URL and then run the API using that uRL. This will then return a response in the same manner as it would in the public cloud.
Upload or Update Data Files in Private Cloud
Upload or Update Data Files in Private Cloud
curl 'https://your.internal.blazemeter.net/api/v4/collections/10033948/files/data' \
-X POST \
-F 'file=@/my/path/to/colors.csv' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"result": {
"collectionType": "multiV4",
"created": 1563825326,
"creatorClientId": "gui",
"dataFiles": [],
"description": null,
"draftId": null,
"filesToSplit": [],
"id": 12345678,
"items": null,
"kpiTrackingData": null,
"lastRunTime": null,
"lastUpdatedById": 123456,
"masters": [],
"migratedFromTestCollectionId": null,
"migratedToTestId": null,
"name": "July_22_2:55 PM - Multi Test",
"note": null,
"oldVersionId": null,
"projectId": 123456,
"shouldSendReportEmail": true,
"testsForExecutions": [
{
"executions": [
{
"concurrency": 25,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"harbor-5d2cecc61391a8f318703bd5": 25
},
"locationsPercents": {
"harbor-5d2cecc61391a8f318703bd5": 100
},
"rampUp": "1m",
"scenario": "default-scenario-6936475",
"steps": 0,
"testId": 1234567
}
],
"overrideExecutions": [
{
"concurrency": 25,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"harbor-5d2cecc61391a8f318703bd5": 25
},
"locationsPercents": {
"harbor-5d2cecc61391a8f318703bd5": 100
},
"rampUp": "1m",
"steps": 0
}
],
"testId": 1234567
},
{
"executions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"harbor-5d2cecc61391a8f318703bd5": 20
},
"locationsPercents": {
"harbor-5d2cecc61391a8f318703bd5": 100
},
"rampUp": "1m",
"scenario": "default-scenario-6952118",
"steps": 0,
"testId": 2345678
}
],
"overrideExecutions": [
{
"concurrency": 20,
"executor": "jmeter",
"holdFor": "19m",
"locations": {
"harbor-5d2cecc61391a8f318703bd5": 20
},
"locationsPercents": {
"harbor-5d2cecc61391a8f318703bd5": 100
},
"rampUp": "1m",
"steps": 0
}
],
"testId": 2345678
}
],
"underMigration": null,
"updated": 1563825332,
"userId": 123456,
"v4MigratedDate": null
}
}
API Explorer: /collections/{collectionId}/files/data
To upload a data file asset to a multi test, POST the file to the collectionId
(you need to know the collectionId
of the created multi test). Use the following template for the file path and name:
curl -X POST -F 'file=@path to file/file.ext' ...
The sample code uploads a file (@/my/path/to/colors.csv
) to a multi test with an ID of 10033948
. Replace @/my/path/to/colors.csv
with the actual path and file name and 10033948
with your collectionId
.
To update the contents of an uploaded file, repeat the same operation (upload the updated file using the same file name).
Upload or Update Files to Shared Folders in Private Cloud
Upload or Update Files to Shared Folders in Private Cloud
curl 'https://your.internal.blazemeter.net/api/v4/folders/5d2f86f30cfb1d84717bf4a3/files' \
-X POST \
-F 'file=@/my/path/to/colors.csv' \
--user 'api_key_id:api_key_secret'
Response 200 OK
{
"created": 1563395827,
"files": [],
"id": "5d2f86f30cfb1d84717bf4a3",
"name": "myFolder",
"workspaceId": 123456
}
API Explorer: /folders/{folderId}/files
To upload a file asset to a shared folder, POST the file to the folderId
(you need to know the folderId
of the folder). Use the following template for the file path and name:
curl -X POST -F 'file=@path to file/file.ext' ...
The sample code uploads a file (@/my/path/to/colors.csv
) to a folder with an ID of 5d2f86f30cfb1d84717bf4a3
. Replace @/my/path/to/colors.csv
with the actual path and file name and 5d2f86f30cfb1d84717bf4a3
with your folderId
.
To update the contents of an uploaded file, repeat the same operation (upload the updated file using the same file name).
Private Cloud Functionalities
This list of functionalities supported in private cloud.
Functionalities
-
Performance
Can be used in performance tests
-
Proxy Recorder
Can be used as a proxy recorder
-
Mock Services
Can be used to host a mock service
-
GUI Functional
Can be used for GUI functional tests. See GUI Functional Browsers for the full list of supported browsers
-
Service Virtualization Bridge
Can be used for Service Virtualization Bridge connections
Private Location Appendix
List of Private Location Functionalities
Private Locations gives you the option of choosing which functionalities you want to use with your private location. Below is the list of support functionalities.
Functionality | Description |
---|---|
performance |
This adds the Performance functionality to the private location. |
functionalApi |
This adds the API Testing functionality to the private location. |
proxyRecorder |
This adds the Proxy Recorder functionality to the private location. |
mockServices |
This adds the Mock Services functionality to the private location. |
functionalGui Shared Type Only |
This adds the GUI Functional functionality to the private location. See here for the list of supported browsers. |
sv-bridge |
This adds the Service Virtualization Bridge functionality to the private location. |
List of GUI Functional Browsers
This list of browsers should be included in the funcIds
if you include functionalGui
as part of your private locations functionalities.
Functionalities
-
firefox:default
This adds the default Firefox browser to the private location (currently is version 78). This must be included with the
firefox:default
functionality and cannot be used with the version specific Firefox or Chrome functionalities (i.e.firefox:65
). -
chrome:default
This adds the default Chrome browser to the private location (currently is version 84). This must be included with the
chrome:default
functionality and cannot be used with the version specific Firefox or Chrome functionalities (i.e.chrome:65
). -
firefox:78
This adds the Firefox version 78 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:77
This adds the Firefox version 77 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:76
This adds the Firefox version 76 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:75
This adds the Firefox version 75 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:74
This adds the Firefox version 74 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:73
This adds the Firefox version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:72
This adds the Firefox version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:71
This adds the Firefox version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:70
This adds the Firefox version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:69
This adds the Firefox version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:68
This adds the Firefox version 68 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:67
This adds the Firefox version 67 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:66
This adds the Firefox version 66 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:65
This adds the Firefox version 65 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:64
This adds the Firefox version 64 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:63
This adds the Firefox version 63 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:62
This adds the Firefox version 62 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:61
This adds the Firefox version 61 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:60
This adds the Firefox version 60 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
firefox:59
This adds the Firefox version 59 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
firefox:65
). -
chrome:84
This adds the Chrome version 84 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:83
This adds the Chrome version 83 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:82
This adds the Chrome version 82 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:81
This adds the Chrome version 81 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:80
This adds the Chrome version 80 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:79
This adds the Chrome version 79 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:78
This adds the Chrome version 78 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:77
This adds the Chrome version 77 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:76
This adds the Chrome version 76 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:75
This adds the Chrome version 75 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:74
This adds the Chrome version 74 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:73
This adds the Chrome version 73 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:72
This adds the Chrome version 72 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:71
This adds the Chrome version 71 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:70
This adds the Chrome version 70 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:69
This adds the Chrome version 69 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:68
This adds the Chrome version 68 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:67
This adds the Chrome version 67 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:66
This adds the Chrome version 66 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
). -
chrome:65
This adds the Chrome version 65 browser to the private location. This can be included with any of the version specific Firefox and Chrome functionalities (i.e.
chrome:65
).
List of Private Location Images
Below is a full list of all the private locations images available.
Images
-
blazemeter/crane
This is the image for the crane container that handles all the communications with BlazeMeter and the other containers on private locations.
-
torero
Private Cloud Only
This is the image for incorporating the test validator in prviate cloud.
-
blazemeter
Legacy Users Only
This is the image for running legacy JMeter tests on private locations.
-
apm-image
This is the image for incorporating the APM integrations on private locations.
-
taurus-cloud
This is the image for running performance, API functional, and GUI functional tests on private locations.
-
blazemeter/proxy-recorder
This is the image for the proxy recorder integration on private locations.
-
blazemeter/service-mock
This is the image for the mock services integration on private locations.
-
blazemeter/pc-mock-service
Private Cloud Only
This is the image for the mock services integration on private locations in private cloud.
-
blazemeter/sv-bridge
This is the image for the Service Virtualization Bridge integration on private locations.
-
blazemeter/charmander/chrome
This is the image for the Chrome GUI Functional integration on private locations. There are several supported Chrome browser versions for this image.
-
blazemeter/charmander/firefox
This is the image for the Firefox GUI Functional integration on private locations. There are several supported Firefox browser versions for this image.
Performance Locations
List of Google Cloud Locations
The following table contains the locationIds for all the cloud locations in Google Cloud provided by BlazeMeter.
Location ID | Location Name |
---|---|
asia-east1-a |
Asia East (Taiwan, Google) |
asia-northeast1-a |
Asia Northeast (Japan, Google) |
asia-northeast2-a |
Japan (Osaka, Google) |
asia-south1-a |
Asia South (Mumbai, Google) |
asia-southeast1-a |
Asia Southeast (Singapore, Google) |
australia-southeast1-a |
Australia (Sydney, Google) |
europe-west1-b |
EU West (Belgium, Google) |
europe-west2-a |
EU West (London, Google) |
europe-west3-a |
EU West (Frankfurt, Google) |
europe-west4-b |
EU West (Netherlands, Google) |
northamerica-northeast1-a |
Canada East (Montreal, Google) |
southamerica-east1-a |
Brazil (Sao Paulo, Google) |
us-central1-a |
US Central (Iowa, Google) |
us-east1-b |
US East (South Carolina, Google) |
us-east4-a |
US East (Virginia, Google) |
us-west1-a |
US West (Oregon, Google) |
us-west2-a |
US West (California, Google) |
List of Amazon AWS Cloud Locations
The following table contains the locationIds for all the cloud locations in AWS provided by BlazeMeter.
Location ID | Location Name |
---|---|
ap-northeast-1 |
Asia Pacific (Tokyo, AWS) |
ap-northeast-2 |
Asia Pacific (Seoul, AWS) |
ap-south-1 |
Asia Pacific (Mumbai, AWS) |
ap-southeast-1 |
Asia Pacific (Singapore, AWS) |
ap-southeast-2 |
Australia (Sydney, AWS) |
ca-central-1 |
Canada (Central, AWS) |
eu-central-1 |
EU Central (Frankfurt, AWS) |
eu-west-1 |
EU West (Ireland, AWS) |
eu-west-2 |
EU West (London, AWS) |
eu-west-3 |
EU West (Paris, AWS) |
sa-east-1 |
South America (Sao Paulo, AWS) |
us-east-1 |
US East (Virginia, AWS) |
us-east-2 |
US East (Ohio, AWS) |
us-west-1 |
US West (N. California, AWS) |
us-west-2 |
US West (Oregon, AWS) |
List of Microsoft Azure Cloud Locations
The following table contains the locationIds for all the cloud locations in Azure provided by BlazeMeter.
Location ID | Location Name |
---|---|
azure-ap-northeast-1 |
Korea Central (Seoul, Azure) |
azure-ap-northeast-2 |
Korea South (Busan, Azure) |
azure-brazil-south-1 |
Brazil South (Sao Paulo, Azure) |
azure-central-asia-1 |
Central India (Pune, Azure) |
azure-central-asia-2 |
West India (Mumbai, Azure) |
azure-central-asia-3 |
South India (Chennai, Azure) |
azure-central-ca |
Canada Central (Toronto, Azure) |
azure-central-us-1 |
US Central (Iowa, Azure) |
azure-east-asia-1 |
East Asia (Hong Kong, Azure) |
azure-east-au-1 |
Australia East (New South Wales, Azure) |
azure-east-ca |
Canada East (Quebec City, Azure) |
azure-east-us-1 |
US East (Virginia, Azure) |
azure-east-us-2 |
US East 2 (Virginia, Azure) |
azure-eu-west-2 |
UK South (London, Azure) |
azure-eu-west-3 |
UK West (Cardiff, Azure) |
azure-japan-east-1 |
Japan East (Tokyo, Azure) |
azure-japan-west-1 |
Japan West (Osaka, Azure) |
azure-north-central-us-1 |
US North Central (Illinois, Azure) |
azure-north-europe-1 |
EU North (Ireland, Azure) |
azure-south-central-us-1 |
US South Central (Texas, Azure) |
azure-southeast-asia-1 |
Southeast Asia (Singapore, Azure) |
azure-southeast-au-1 |
Australia Southeast (Victoria, Azure) |
azure-us-west-central |
US West Central (Wyoming, Azure) |
azure-west-europe-1 |
EU West (Netherlands, Azure) |
azure-west-us-1 |
US West (California, Azure) |
azure-west-us-2 |
US West 2 (Washington, Azure) |
Private Locations Location ID
When wanting to add a private location to your test, you will need to get the harborId
for the private location you want and use the following format as the location ID
:
harbor-harborId
Glossary
This section covers the various terms that are used throughout the APIs discussed.
Account ID
This is the unique identifier of an account. It is used in the following APIs:
- Account Engine Utilization Report
- Account User List
- Add User to Account
- Create a Private Location
- Create a Workspace
- List Account Invitations
- List Private Locations
- List Schedule History
- List Schedules
- Projects List
- Terminate Masters in Account
- Update Account User
- Workspaces List
It is found through the BlazeMeter URL, using the following example:
https://a.blazemeter.com/app/#/accounts/{account ID}...
The number that comes after accounts
in the example above is the Account ID.
Collection ID
This is the unique identifier of a multi test. It is used in the following APIs:
- Add Tests to Multi Test
- Create a Schedule
- Delete Data Files
- Delete a Multi Test
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Edit Tests in Multi Test
- List Data Files
- List Masters
- List Schedule History
- List Schedules
- Multi Test Details
- Start a Multi Test
- Update a Multi Test
- Upload or Update Data Files
It is found in the response of the following APIs:
- Create a Multi Test
- Create a Schedule
- List Masters
- List Multi Tests
- Master Details
- Schedule Details
- Update Schedule
For another method for finding this value, visit this article.
concurrency
The Taurus Term used to describe the number of concurrent users to run the test with. It is used in the following APIs:
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Create a Workspace
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- List Masters
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Start a Test
- Summary Statistics
- Test Details
- Update a Master
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
executor
The Taurus Term used to describe the execution type for a test (i.e. JMeter, Selenium, Gatling, etc.). It is used in the following APIs:
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- List Masters
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Start a Test
- Test Details
- Update a Master
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
Folder ID
This is the unique identifier of the shared folder. It is used in the following APIs:
- Create a Test
- Delete Shared Folder File
- Delete a Shared Folder
- List Shared Folder Files
- Shared Folder Details
- Update a Shared Folder
- Update a Test
- Upload or Update Files to Shared Folder
It is found in the response of the following APIs:
- Create a Shared Folder
- Delete a Test in Multi Test
- Edit Tests in Multi Test
- Multi Test Details
- List Multi Tests
- List Shared Folders
- List Tests
- Test Details
- Update a Multi Test
- Update a Test
Harbor ID
This is the unique identifier of the private location. It is used in the following APIs:
- Add a Workspace to Private Location
- Agent Details
- Delete a Private Location
- Delete a Workspace in Private Location
- Delete an Agent
- Generate Docker Command
- List Agents
- List Private Locations
- Private Location Details
- Private Location Image Versions
- Update a Private Location
- Update an Agent
It is found in the response of the following APIs:
For another method of finding this value, visit this article.
hold-for
The Taurus Term to describe the length of time the test will run at the full concurrency settings. It is used in the following APIs:
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Create a Workspace
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- List Masters
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Start a Test
- Summary Statistics
- Test Details
- Update a Master
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
Label ID
This is the unique identifier of a label in a master
(or test report). It is used in the following APIs:
It is found in the response of the following APIs:
- Error Statistics
- List Masters
- Master Details
- Request Statistics
- Thresholds Statistics
- Update a Master
Location ID
This is the unique identifier for a cloud location or a private location. See the Performance Locations section for more details. It is used in the following APIs:
- Create a Test
- Edit Tests in Multi Test
- Error Statistics
- List Masters
- Request Statistics
- Retrieve Logs
- Thresholds Statistics
- Time-Series Data
- Summary Statistics
- Update a Test
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Edit Tests in Multi Test
- Master Details
- List Masters
- List Multi Tests
- List Tests
- Start a Multi Test
- Start a Test
- Track Status of a Test
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
For another method for finding this value, visit this article.
Master ID
This is the unique identifier that identifies a test run. It is used in the following APIs:
- Add a Public Token
- Delete a Public Token
- Error Statistics
- Inject Custom Time Series Data
- Master Details
- Request Statistics
- Start a Multi Test
- Start a Test
- Stop a Test Run
- Summary Statistics
- Thresholds Statistics
- Time-Series Data
- Track Status of a Test Run
- Update a Master
It is found in the response of the following APIs:
- List Masters
- List Schedule History
- Start a Multi Test
- Start a Test
- Terminate Masters in Account
- Terminate Masters in Projects
- Terminate Masters in Workspace
For another method for finding this value, visit this article.
Project ID
This is the unique identifier that identifies a given project. It is used in the following APIs:
- Add Tests to Multi Test
- Create a Multi Test
- Create a Test
- Delete a Project
- List Masters
- List Multi Tests
- List Schedule History
- List Schedules
- List Tests
- List Schedule History
- Project Details
- Terminate Masters in Projects
- Update a Project
- Update a Test
It is found in the response of the following APIs:
- Create a Project
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- Edit Tests in Multi Test
- Master Details
- Multi Test Details
- Projects List
- Start a Multi Test
- Start a Test
- Test Details
- Update a Multi Test
For another method for finding this value, visit this article.
ramp-up
The Taurus Term to describe the time it takes to ramp up to the full concurrency set. It is used in the following APIs:
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Create a Workspace
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- List Masters
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Start a Test
- Summary Statistics
- Test Details
- Update a Master
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
Scenario ID
This is the unique identifier that identifies a scenario in a test run. It is used in the following APIs:
It is found in the response of the following APIs:
For another method for finding this value, visit this article.
Schedule ID
This is the unique identifier that identifies a scheduled test run. It is used in the following APIs:
It is found in the response of the following APIs:
Session ID
This is the unique identifier that identifies a session in a test run. It is used in the following APIs:
It is found in the response of the following APIs:
- List Masters
- Master Details
- Start a Multi Test
- Start a Test
- Stop a Test
- Stop All Masters of a Test
- Terminate a Test
- Track Status of a Test
For another method for finding this value, visit this article.
Ship ID
This is the unique identifier of an agent within a private location. It is used in the following APIs:
- Agent Details
- Delete an Agent
- Generate Docker Command
- Private Location Image Versions
- Update an Agent
It is found in the response of the following APIs
For another method of finding this value, visit this article.
steps
The Taurus Term for describing the number of steps the rampup will use (i.e. setting this to 3 will make the ramp up increase 3 times during the ramp up period). It is used in the following APIs:
It is found in the response of the following APIs:
- Add Tests to Multi Test
- Create a Workspace
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Duplicate a Test
- List Masters
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Start a Test
- Summary Statistics
- Test Details
- Update a Master
- Update a Multi Test
- Update a Test
- Upload or Update Asset Files
Test ID
This is the unique identifier that identifies a test. It is used in the following APIs:
- Add Tests to Multi Test
- Create a Schedule
- Delete Asset File
- Delete a Test
- Duplicate a Test
- List Masters
- List Schedule History
- List Schedules
- List Test Files
- Start a Test
- Test Details
- Update a Test
- Upload or Update Asset Files
It is found in the response of the following APIs:
- Create a Test
- Delete a Test in Multi Test
- Duplicate a Multi Test
- Edit Tests in Multi Test
- List Multi Tests
- List Tests
- Master Details
- Multi Test Details
- Start a Multi Test
- Thresholds Statistics
- Update Schedule
- Update a Master
- Update a Multi Test
For another method for finding this value, visit this article.
User ID
This is the unique identifier that identifies a user. It is used in the following APIs:
It is found in the response of the following APIs:
Workspace ID
This is the unique identifier that identifies a workspace. It is used in the following APIs:
- Active Masters in Workspace
- Add User to Account
- Add User to Workspace
- Add a Workspace to Private Location
- Create a Private Location
- Create a Project
- Create a Shared Folder
- Delete a Workspace in Private Location
- List Masters
- List Multi Tests
- List Private Locations
- List Schedule History
- List Schedules
- List Shared Folders
- List Tests
- Projects List
- Terminate Masters in Workspace
- Update Workspace User
- Update a Project
- Workspace Details
- Workspace User List
It is found in the response of the following APIs:
- Account Engine Utilization Report
- Create a Workspace
- List Shared Folder Files
- Project Details
- Shared Folder Details
- Workspaces List
For another method for finding this value, visit this article.