{
  "service": "blaze_meter_performance",
  "displayName": "BlazeMeter Performance",
  "categories": [
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Secret",
      "placeholder": "BLAZEMETER_API_SECRET",
      "description": "BlazeMeter API secret used as the Basic Auth password. Create or copy API keys from the BlazeMeter API Keys settings page: https://a.blazemeter.com/app/#/settings/api-keys.",
      "extraFields": [
        {
          "key": "apiKeyId",
          "label": "API Key ID",
          "inputType": "text",
          "required": true,
          "secret": false,
          "placeholder": "BLAZEMETER_API_KEY_ID",
          "description": "BlazeMeter API key ID used as the Basic Auth username. Create or copy API keys from the BlazeMeter API Keys settings page: https://a.blazemeter.com/app/#/settings/api-keys."
        }
      ]
    }
  ],
  "homepageUrl": "https://www.blazemeter.com/",
  "actions": [
    {
      "id": "blaze_meter_performance.get_test",
      "service": "blaze_meter_performance",
      "name": "get_test",
      "description": "Get one BlazeMeter performance test by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "testId": {
            "type": "integer",
            "minimum": 1,
            "description": "The BlazeMeter test ID to retrieve."
          }
        },
        "additionalProperties": false,
        "required": [
          "testId"
        ],
        "description": "Input for retrieving one BlazeMeter performance test."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    },
    {
      "id": "blaze_meter_performance.get_user",
      "service": "blaze_meter_performance",
      "name": "get_user",
      "description": "Get the BlazeMeter user profile associated with the configured API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "Input for getting the current BlazeMeter user."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    },
    {
      "id": "blaze_meter_performance.list_accounts",
      "service": "blaze_meter_performance",
      "name": "list_accounts",
      "description": "List BlazeMeter accounts available to the configured API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of records to skip before returning results."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of records to return."
          },
          "sort": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One BlazeMeter sort field. Prefix with - for descending order."
            },
            "description": "Sort fields accepted by BlazeMeter, such as name or -created."
          }
        },
        "additionalProperties": false,
        "description": "Pagination controls accepted by BlazeMeter list endpoints."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    },
    {
      "id": "blaze_meter_performance.list_projects",
      "service": "blaze_meter_performance",
      "name": "list_projects",
      "description": "List BlazeMeter projects for a workspace.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The BlazeMeter workspace ID to list projects from."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of projects to skip before returning results."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of projects to return."
          },
          "sort": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One BlazeMeter sort field. Prefix with - for descending order."
            },
            "description": "Sort fields accepted by BlazeMeter, such as name or -created."
          }
        },
        "additionalProperties": false,
        "required": [
          "workspaceId"
        ],
        "description": "Input for listing BlazeMeter projects under a workspace."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    },
    {
      "id": "blaze_meter_performance.list_tests",
      "service": "blaze_meter_performance",
      "name": "list_tests",
      "description": "List BlazeMeter performance tests by workspace or project.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "workspaceId": {
            "type": "integer",
            "minimum": 1,
            "description": "The BlazeMeter workspace ID used to filter tests."
          },
          "projectId": {
            "type": "integer",
            "minimum": 1,
            "description": "The BlazeMeter project ID used to filter tests."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of tests to skip before returning results."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of tests to return."
          },
          "sort": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One BlazeMeter sort field. Prefix with - for descending order."
            },
            "description": "Sort fields accepted by BlazeMeter, such as name or -created."
          }
        },
        "additionalProperties": false,
        "description": "Input for listing BlazeMeter performance tests.",
        "anyOf": [
          {
            "required": [
              "workspaceId"
            ]
          },
          {
            "required": [
              "projectId"
            ]
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    },
    {
      "id": "blaze_meter_performance.list_workspaces",
      "service": "blaze_meter_performance",
      "name": "list_workspaces",
      "description": "List BlazeMeter workspaces for an account.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "accountId": {
            "type": "integer",
            "minimum": 1,
            "description": "The BlazeMeter account ID to list workspaces from."
          },
          "enabled": {
            "type": "boolean",
            "description": "Whether to return only enabled or disabled workspaces."
          },
          "textFilter": {
            "type": "string",
            "minLength": 1,
            "description": "A text filter matched against workspace names."
          }
        },
        "additionalProperties": false,
        "required": [
          "accountId"
        ],
        "description": "Input for listing BlazeMeter workspaces under an account."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "apiVersion": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The BlazeMeter API version returned by the endpoint."
              },
              {
                "type": "null"
              }
            ]
          },
          "requestId": {
            "anyOf": [
              {
                "type": "string",
                "description": "The BlazeMeter request identifier."
              },
              {
                "type": "null"
              }
            ]
          },
          "error": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "code": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "description": "The numeric BlazeMeter error code."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "message": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The BlazeMeter error message."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "additionalProperties": false,
                "description": "The error object returned by BlazeMeter when a request fails."
              },
              {
                "type": "null"
              }
            ]
          },
          "result": {
            "description": "The result payload returned by BlazeMeter."
          },
          "total": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total number of matching records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "limit": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response limit when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "skip": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The response offset when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "hidden": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The number of hidden records when returned."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw BlazeMeter response object."
          }
        },
        "additionalProperties": false,
        "required": [
          "apiVersion",
          "requestId",
          "error",
          "result",
          "total",
          "limit",
          "skip",
          "hidden",
          "raw"
        ],
        "description": "A normalized BlazeMeter API v4 response envelope."
      }
    }
  ]
}
