# ChaosCenter API Documentation API Reference

ChaosCenter provides console and UI experience for creating, scheduling, and monitoring chaos workflows. Chaos workflows consist of a sequence of experiments run together to achieve the objective of introducing some kind of fault into an application.

##### API Endpoints

    Dev:
    http://localhost:8080
    Prod:
    http://localhost:8080/query

# Agents

ChaosCenter gives the ability to run chaos on remote Kubernetes cluster. A Self-agent is automatically connected after successfully onboarding in ChaosCenter. Use the following APIs for agent operations.
User can access connected agents via Agents page of ChaosCenter.

Agents

## List Agents

This API returns a list of connected agents with ChaosCenter. It includes pending, active and inactive clusters.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
clusterType | external/internal | Optional

projectID:
string

(no description)

clusterType:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listClusters($projectID: String!, $clusterType: String){
      listClusters(projectID: $projectID, clusterType: $clusterType){
        clusterID
        projectID
        clusterName
        description
        platformName
        accessKey
        isRegistered
        isClusterConfirmed
        isActive
        updatedAt
        createdAt
        clusterType
        noOfSchedules
        noOfWorkflows
        token
        agentNamespace
        serviceAccount
        agentScope
        agentNsExists
        agentSaExists
        lastWorkflowTimestamp
        startTime
        version
      }
    }

##### Variables

    {
      "projectID": "string",
      "clusterType": "string"
    }

Try it now

200 OK

Successful operation

type
Cluster

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listClusters": [
          {
            "clusterID": "string",
            "projectID": "string",
            "clusterName": "string",
            "description": "string",
            "platformName": "string",
            "accessKey": "string",
            "isRegistered": "boolean",
            "isClusterConfirmed": "boolean",
            "isActive": "boolean",
            "updatedAt": "string",
            "createdAt": "string",
            "clusterType": "string",
            "noOfSchedules": "integer",
            "noOfWorkflows": "integer",
            "token": "string",
            "agentNamespace": "string",
            "serviceAccount": "string",
            "agentScope": "string",
            "agentNsExists": "boolean",
            "agentSaExists": "boolean",
            "lastWorkflowTimestamp": "string",
            "startTime": "string",
            "version": "string"
          }
        ]
      }
    }

Agents

## Get Agents

This API is used to fetch the details of an agent.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
clusterID | - | Mandatory

clusterID:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getAgentDetails($clusterID: String!, $projectID: String!){
      getAgentDetails(clusterID: $clusterID, projectID: $projectID){
        clusterID
        projectID
        clusterName
        description
        platformName
        accessKey
        isRegistered
        isClusterConfirmed
        isActive
        updatedAt
        createdAt
        clusterType
        noOfSchedules
        noOfWorkflows
        token
        agentNamespace
        serviceAccount
        agentScope
        agentNsExists
        agentSaExists
        lastWorkflowTimestamp
        startTime
        version
      }
    }

##### Variables

    {
      "clusterID": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
Cluster

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getAgentDetails": {
          "clusterID": "string",
          "projectID": "string",
          "clusterName": "string",
          "description": "string",
          "platformName": "string",
          "accessKey": "string",
          "isRegistered": "boolean",
          "isClusterConfirmed": "boolean",
          "isActive": "boolean",
          "updatedAt": "string",
          "createdAt": "string",
          "clusterType": "string",
          "noOfSchedules": "integer",
          "noOfWorkflows": "integer",
          "token": "string",
          "agentNamespace": "string",
          "serviceAccount": "string",
          "agentScope": "string",
          "agentNsExists": "boolean",
          "agentSaExists": "boolean",
          "lastWorkflowTimestamp": "string",
          "startTime": "string",
          "version": "string"
        }
      }
    }

Agents

## Register Agent

This API is used to register an agent to ChaosCenter. It returns a token which is required to deploy Agent components and the related RBACs. To access the Agent manifest, visit the following link: http://localhost:8080/file/ <token>.yaml

Field | Possible values | Mandatory/Optional
--- | --- | ---
clusterName | - | Mandatory
description | - | Optional
projectID | - | Mandatory
platformName | - | Mandatory
clusterType | external/internal | Mandatory
agentNamespace | - | Optional
serviceAccount | - | Optional
agentScope | cluster/namespace | Mandatory
agentNsExists | true/false | Optional
agentSaExists | true/false | Optional
nodeSelector | - | Optional
tolerations | - | Optional

request:
RegisterClusterRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation registerCluster($request: RegisterClusterRequest!){
      registerCluster(request: $request){
        token
        clusterID
        clusterName
      }
    }

##### Variables

    {
      "request": {
        "clusterName": "string",
        "description": "string",
        "platformName": "string",
        "projectID": "object",
        "clusterType": "string",
        "agentNamespace": "string",
        "serviceAccount": "string",
        "agentScope": "string",
        "agentNsExists": "boolean",
        "agentSaExists": "boolean",
        "skipSsl": "boolean",
        "nodeSelector": "string",
        "tolerations": [
          {
            "tolerationSeconds": "number",
            "key": "string",
            "operator": "string",
            "effect": "string",
            "value": "string"
          }
        ]
      }
    }

Try it now

200 OK

Successful operation

type
RegisterClusterResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "registerCluster": {
          "token": "string",
          "clusterID": "string",
          "clusterName": "string"
        }
      }
    }

Agents

## Delete Agent

This query can be used to delete an agent from ChaosCenter. It cannot be undone.
Note: User can access the details of deleted cluster inside MongoDB, which are being marked as removed.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
clusterIDs | - | Mandatory

projectID:
string

(no description)

clusterIDs:
string[]

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteClusters($projectID: String!, $clusterIDs: [String]!){
      deleteClusters(projectID: $projectID, clusterIDs: $clusterIDs)
    }

##### Variables

    {
      "projectID": "string",
      "clusterIDs": [
        "string"
      ]
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteClusters": "string"
      }
    }

# Chaos Workflow

Chaos workflows consist of a sequence of experiments run together to induce chaos in the Kubernetes platform.
Note: Target agent should be in active state before scheduling the workflow

Chaos Workflow

## Create Chaos Workflow

This API is used to create a Chaos Workflow. The workflow can be a one time run or a cron schedule.

Field | Possible values | Mandatory/Optional
--- | --- | ---
workflowID | - | Optional
workflowManifest | Escaped JSON format of the workflow YAML | Mandatory
cronSyntax | - | Optional
workflowName | external/internal | Mandatory
weightages | - | Mandatory
workflowDescription | - | Mandatory
isCustomWorkflow | true/false | Madatory
projectID | - | Mandatory
clusterID | - | Mandatory

request:
ChaosWorkFlowRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation createChaosWorkFlow($request: ChaosWorkFlowRequest!){
      createChaosWorkFlow(request: $request){
        workflowID
        cronSyntax
        workflowName
        workflowDescription
        isCustomWorkflow
      }
    }

##### Variables

    {
      "request": {
        "workflowID": "string",
        "workflowManifest": "string",
        "cronSyntax": "string",
        "workflowName": "string",
        "workflowDescription": "string",
        "weightages": [
          {
            "experimentName": "string",
            "weightage": "number"
          }
        ],
        "isCustomWorkflow": "boolean",
        "projectID": "object",
        "clusterID": "object"
      }
    }

Try it now

200 OK

Successful operation

type
ChaosWorkFlowResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "createChaosWorkFlow": {
          "workflowID": "string",
          "cronSyntax": "string",
          "workflowName": "string",
          "workflowDescription": "string",
          "isCustomWorkflow": "boolean"
        }
      }
    }

Chaos Workflow

## List Chaos Workflow Runs

This API returns a list of Chaos Workflows and their runs. This API can fetch both cron and non-cron workflow present in the ChaosCenter. false
This query also supports pagination, filtering and sorting of data according to different parameters.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowIDs | [] | Optional
workflowRunIDs | [] | Optional
pagination | {page: "integer", limit:"integer"} | Optional
sort | {field: "NAME/TIME", descending:"boolean"} | Optional
filter | {workflowName: "string", limit:"string", workflowStatus:WorkflowRunStatus, dateRange: dateRange } | Optional

request:
ListWorkflowRunsRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listWorkflowRuns($request: ListWorkflowRunsRequest!){
      listWorkflowRuns(request: $request){
        totalNoOfWorkflowRuns
      }
    }

##### Variables

    {
      "request": {
        "projectID": "object",
        "workflowRunIDs": [
          "object"
        ],
        "workflowIDs": [
          "object"
        ],
        "pagination": {
          "page": "number",
          "limit": "number"
        },
        "sort": {
          "field": "string",
          "descending": "boolean"
        },
        "filter": {
          "workflowName": "string",
          "clusterName": "string",
          "workflowStatus": "string",
          "dateRange": {
            "startDate": "string",
            "endDate": "string"
          }
        }
      }
    }

Try it now

200 OK

Successful operation

type
ListWorkflowRunsResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listWorkflowRuns": {
          "totalNoOfWorkflowRuns": "integer"
        }
      }
    }

Chaos Workflow

## List Chaos Workflow

This query is used to get the list of all the scheduled workflows. Individual schedules can also be extracted by providing the workflowIDs

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowIDs | [] | Optional
pagination | {page: "integer", limit:"integer"} | Optional
sort | {field: "NAME/TIME", descending:"boolean"} | Optional
filter | {workflowName: "string", limit:"string", workflowStatus:WorkflowRunStatus, dateRange: dateRange } | Optional

request:
ListWorkflowsRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listWorkflows($request: ListWorkflowsRequest!){
      listWorkflows(request: $request){
        totalNoOfWorkflows
      }
    }

##### Variables

    {
      "request": {
        "projectID": "object",
        "workflowIDs": [
          "object"
        ],
        "pagination": {
          "page": "number",
          "limit": "number"
        },
        "sort": {
          "field": "string",
          "descending": "boolean"
        },
        "filter": {
          "workflowName": "string",
          "clusterName": "string"
        }
      }
    }

Try it now

200 OK

Successful operation

type
ListWorkflowsResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listWorkflows": {
          "totalNoOfWorkflows": "integer"
        }
      }
    }

Chaos Workflow

## Re-run Chaos Workflow

This API is used to re-run a particular chaos workflow on the basis of workflowID

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | string | Mandatory
workflowID | string | Mandatory

projectID:
string

(no description)

workflowID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation reRunChaosWorkFlow($projectID: String!, $workflowID: String!){
      reRunChaosWorkFlow(projectID: $projectID, workflowID: $workflowID)
    }

##### Variables

    {
      "projectID": "string",
      "workflowID": "string"
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "reRunChaosWorkFlow": "string"
      }
    }

Chaos Workflow

## Update Chaos Workflow

Update the specified chaos workflow by setting the values of the parameters passed.

Field | Possible values | Mandatory/Optional
--- | --- | ---
workflowID | - | Mandatory
cronSyntax | - | Mandatory
workflowName | - | Mandatory
workflowDescription | - | Mandatory
isCustomWorkflow | true/false | Mandatory
projectID | - | Mandatory
clusterID | - | Mandatory

request:
ChaosWorkFlowRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateChaosWorkflow($request: ChaosWorkFlowRequest){
      updateChaosWorkflow(request: $request){
        workflowID
        cronSyntax
        workflowName
        workflowDescription
        isCustomWorkflow
      }
    }

##### Variables

    {
      "request": {
        "workflowID": "string",
        "workflowManifest": "string",
        "cronSyntax": "string",
        "workflowName": "string",
        "workflowDescription": "string",
        "weightages": [
          {
            "experimentName": "string",
            "weightage": "number"
          }
        ],
        "isCustomWorkflow": "boolean",
        "projectID": "object",
        "clusterID": "object"
      }
    }

Try it now

200 OK

Successful operation

type
ChaosWorkFlowResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateChaosWorkflow": {
          "workflowID": "string",
          "cronSyntax": "string",
          "workflowName": "string",
          "workflowDescription": "string",
          "isCustomWorkflow": "boolean"
        }
      }
    }

Chaos Workflow

## Delete Chaos Workflow

Delete chaos workflow will permanently delete scheduled workflow from the cluster. It cannot be undone. Note: User can access the details of deleted workflow inside MongoDB, which are being marked as removed.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowID | - | Mandatory
workflowRunID | - | Mandatory

projectID:
string

(no description)

workflowID:
string

(no description)

workflowRunID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteChaosWorkflow($projectID: String!, $workflowID: String, $workflowRunID: String){
      deleteChaosWorkflow(projectID: $projectID, workflowID: $workflowID, workflowRunID: $workflowRunID)
    }

##### Variables

    {
      "projectID": "string",
      "workflowID": "string",
      "workflowRunID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteChaosWorkflow": "boolean"
      }
    }

Chaos Workflow

## Sync Chaos Workflow

This API is used to sync a Chaos Workflow with the connected agent.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowID | - | Mandatory
workflowRunID | - | Mandatory

projectID:
string

(no description)

workflowID:
string

(no description)

workflowRunID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation syncWorkflowRun($projectID: String!, $workflowID: String!, $workflowRunID: String!){
      syncWorkflowRun(projectID: $projectID, workflowID: $workflowID, workflowRunID: $workflowRunID)
    }

##### Variables

    {
      "projectID": "string",
      "workflowID": "string",
      "workflowRunID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "syncWorkflowRun": "boolean"
      }
    }

Chaos Workflow

## Terminate Chaos Workflow

This API is used to terminate a running Chaos Workflow.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowID | - | Mandatory
workflowRunID | - | Mandatory

projectID:
string

(no description)

workflowID:
string

(no description)

workflowRunID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation terminateChaosWorkflow($projectID: String!, $workflowID: String, $workflowRunID: String){
      terminateChaosWorkflow(projectID: $projectID, workflowID: $workflowID, workflowRunID: $workflowRunID)
    }

##### Variables

    {
      "projectID": "string",
      "workflowID": "string",
      "workflowRunID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "terminateChaosWorkflow": "boolean"
      }
    }

Chaos Workflow

## Save Template

Save a scheduled workflow as a template. Provide a workflow name and description, and use the scheduled manifest as a template.

Field | Possible values | Mandatory/Optional
--- | --- | ---
isCustomWorkflow | true/false | Optional
manifest | Escaped JSON format of the workflow YAML | Mandatory
projectID | - | Mandatory
templateName | new-saved-template | Mandatory
templateDescription | Demo Description | Mandatory

request:
TemplateInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation createWorkflowTemplate($request: TemplateInput){
      createWorkflowTemplate(request: $request){
        templateID
        manifest
        templateName
        templateDescription
        projectID
        projectName
        createdAt
        isRemoved
        isCustomWorkflow
      }
    }

##### Variables

    {
      "request": {
        "manifest": "string",
        "templateName": "string",
        "templateDescription": "string",
        "projectID": "string",
        "isCustomWorkflow": "boolean"
      }
    }

Try it now

200 OK

Successful operation

type
WorkflowTemplate

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "createWorkflowTemplate": {
          "templateID": "string",
          "manifest": "string",
          "templateName": "string",
          "templateDescription": "string",
          "projectID": "string",
          "projectName": "string",
          "createdAt": "string",
          "isRemoved": "boolean",
          "isCustomWorkflow": "boolean"
        }
      }
    }

Chaos Workflow

## List Manifest Template

This query lists all the available workflow templates present in a particular project.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listWorkflowManifests($projectID: String!){
      listWorkflowManifests(projectID: $projectID){
        templateID
        manifest
        templateName
        templateDescription
        projectID
        projectName
        createdAt
        isRemoved
        isCustomWorkflow
      }
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
WorkflowTemplate

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listWorkflowManifests": [
          {
            "templateID": "string",
            "manifest": "string",
            "templateName": "string",
            "templateDescription": "string",
            "projectID": "string",
            "projectName": "string",
            "createdAt": "string",
            "isRemoved": "boolean",
            "isCustomWorkflow": "boolean"
          }
        ]
      }
    }

Chaos Workflow

## Get Template Manifest

This query fetches the manifest from a selected template. It takes templateID as an input parameter.

Field | Possible values | Mandatory/Optional
--- | --- | ---
templateID | - | Mandatory
projectID | - | Mandatory

projectID:
string

(no description)

templateID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getWorkflowManifestByID($projectID: String!, $templateID: String!){
      getWorkflowManifestByID(projectID: $projectID, templateID: $templateID){
        templateID
        manifest
        templateName
        templateDescription
        projectID
        projectName
        createdAt
        isRemoved
        isCustomWorkflow
      }
    }

##### Variables

    {
      "projectID": "string",
      "templateID": "string"
    }

Try it now

200 OK

Successful operation

type
WorkflowTemplate

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getWorkflowManifestByID": {
          "templateID": "string",
          "manifest": "string",
          "templateName": "string",
          "templateDescription": "string",
          "projectID": "string",
          "projectName": "string",
          "createdAt": "string",
          "isRemoved": "boolean",
          "isCustomWorkflow": "boolean"
        }
      }
    }

# ChaosHub

ChaosHub constructs workflow from a set of experiments from Chaos Hub or the Git Repo. There is a public hub which get cloned during the installation by default.

ChaosHub

## Add ChaosHub

User can add Hub from the ChaosHub page of the ChaosCenter. After adding a ChaosHub, it will clone the git repository. You can connect both Public and Private Repositories. For Private Repositories, user can authenticate using Access Token and SSH for cloning the repository.

Field | Possible values | Mandatory/Optional
--- | --- | ---
repoURL | - | Mandatory
repoBranch | - | Mandatory
hubName | - | Mandatory
isPrivate | - | Mandatory
authType | BASIC/NONE/SSH/TOKEN | Mandatory
token | - | Optional
userName | - | Optional
password | - | Optional
sshPublicKey | - | Optional
sshPrivateKey | - | Optional
projectID | - | Mandatory

request:
CreateChaosHubRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation addChaosHub($request: CreateChaosHubRequest!){
      addChaosHub(request: $request){
        id
        repoURL
        repoBranch
        projectID
        hubName
        isPrivate
        authType
        token
        userName
        password
        sshPrivateKey
        isRemoved
        createdAt
        updatedAt
        lastSyncedAt
      }
    }

##### Variables

    {
      "request": {
        "hubName": "string",
        "repoURL": "string",
        "repoBranch": "string",
        "isPrivate": "boolean",
        "authType": "string",
        "token": "string",
        "userName": "string",
        "password": "string",
        "sshPrivateKey": "string",
        "sshPublicKey": "string",
        "projectID": "string"
      }
    }

Try it now

200 OK

Successful operation

type
ChaosHub

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "addChaosHub": {
          "id": "string",
          "repoURL": "string",
          "repoBranch": "string",
          "projectID": "string",
          "hubName": "string",
          "isPrivate": "boolean",
          "token": "string",
          "userName": "string",
          "password": "string",
          "sshPrivateKey": "string",
          "isRemoved": "boolean",
          "createdAt": "string",
          "updatedAt": "string",
          "lastSyncedAt": "string"
        }
      }
    }

ChaosHub

## List ChaosHub

This API returns the list of ChaosHub connected with ChaosCenter along with the status and total number of experiments.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listHubStatus($projectID: String!){
      listHubStatus(projectID: $projectID){
        id
        repoURL
        repoBranch
        isAvailable
        totalExp
        hubName
        isPrivate
        authType
        token
        userName
        password
        isRemoved
        sshPrivateKey
        sshPublicKey
        lastSyncedAt
      }
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
ChaosHubStatus

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listHubStatus": [
          {
            "id": "string",
            "repoURL": "string",
            "repoBranch": "string",
            "isAvailable": "boolean",
            "totalExp": "string",
            "hubName": "string",
            "isPrivate": "boolean",
            "token": "string",
            "userName": "string",
            "password": "string",
            "isRemoved": "boolean",
            "sshPrivateKey": "string",
            "sshPublicKey": "string",
            "lastSyncedAt": "string"
          }
        ]
      }
    }

ChaosHub

## Sync ChaosHub

Sync hub will pull the latest commits from the git repository of a selected ChaosHub.

Field | Possible values | Mandatory/Optional
--- | --- | ---
id | - | Mandatory
projectID | - | Mandatory

id:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation syncChaosHub($id: ID!, $projectID: String!){
      syncChaosHub(id: $id, projectID: $projectID){
        id
        repoURL
        repoBranch
        isAvailable
        totalExp
        hubName
        isPrivate
        authType
        token
        userName
        password
        isRemoved
        sshPrivateKey
        sshPublicKey
        lastSyncedAt
      }
    }

##### Variables

    {
      "id": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
ChaosHubStatus

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "syncChaosHub": [
          {
            "id": "string",
            "repoURL": "string",
            "repoBranch": "string",
            "isAvailable": "boolean",
            "totalExp": "string",
            "hubName": "string",
            "isPrivate": "boolean",
            "token": "string",
            "userName": "string",
            "password": "string",
            "isRemoved": "boolean",
            "sshPrivateKey": "string",
            "sshPublicKey": "string",
            "lastSyncedAt": "string"
          }
        ]
      }
    }

ChaosHub

## Update Hub

Update the hub configuration of a ChaosHub

Field | Possible values | Mandatory/Optional
--- | --- | ---
id | - | Mandatory
repoURL | - | Mandatory
repoBranch | - | Mandatory
hubName | - | Mandatory
isPrivate | - | Mandatory
authType | - | BASIC/NONE/SSH/TOKEN
token | - | Optional
userName | - | Optional
password | - | Optional
sshPublicKey | - | Optional
sshPrivateKey | - | Optional
projectID | - | Mandatory

request:
UpdateChaosHubRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateChaosHub($request: UpdateChaosHubRequest!){
      updateChaosHub(request: $request){
        id
        repoURL
        repoBranch
        projectID
        hubName
        isPrivate
        authType
        token
        userName
        password
        sshPrivateKey
        isRemoved
        createdAt
        updatedAt
        lastSyncedAt
      }
    }

##### Variables

    {
      "request": {
        "id": "string",
        "hubName": "string",
        "repoURL": "string",
        "repoBranch": "string",
        "isPrivate": "boolean",
        "authType": "string",
        "token": "string",
        "userName": "string",
        "password": "string",
        "sshPrivateKey": "string",
        "sshPublicKey": "string",
        "projectID": "string"
      }
    }

Try it now

200 OK

Successful operation

type
ChaosHub

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateChaosHub": {
          "id": "string",
          "repoURL": "string",
          "repoBranch": "string",
          "projectID": "string",
          "hubName": "string",
          "isPrivate": "boolean",
          "token": "string",
          "userName": "string",
          "password": "string",
          "sshPrivateKey": "string",
          "isRemoved": "boolean",
          "createdAt": "string",
          "updatedAt": "string",
          "lastSyncedAt": "string"
        }
      }
    }

ChaosHub

## Delete Hub

Delete a ChaosHub from the project

Field | Possible values | Mandatory/Optional
--- | --- | ---
hubID | - | Mandatory
projectID | - | Mandatory

projectID:
string

(no description)

hubID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteChaosHub($projectID: String!, $hubID: String!){
      deleteChaosHub(projectID: $projectID, hubID: $hubID)
    }

##### Variables

    {
      "projectID": "string",
      "hubID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteChaosHub": "boolean"
      }
    }

ChaosHub

## List Chaos Charts

Get all the chaos charts from a ChaosHub

Field | Possible values | Mandatory/Optional
--- | --- | ---
hubName | - | Mandatory
projectID | - | Mandatory

hubName:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listCharts($hubName: String!, $projectID: String!){
      listCharts(hubName: $hubName, projectID: $projectID){
        apiVersion
        kind
      }
    }

##### Variables

    {
      "hubName": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
Chart

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listCharts": [
          {
            "apiVersion": "string",
            "kind": "string"
          }
        ]
      }
    }

ChaosHub

## Get Chaos Hub Experiments

Get the experiment details from a selected chart.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
chartName | - | Mandatory
experimentName | - | Mandatory
hubName | - | Mandatory
fileType | ENGINE/EXPERIMENT | Madatory

request:
ExperimentRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getHubExperiment($request: ExperimentRequest!){
      getHubExperiment(request: $request){
        apiVersion
        kind
      }
    }

##### Variables

    {
      "request": {
        "projectID": "string",
        "chartName": "string",
        "experimentName": "string",
        "hubName": "string",
        "fileType": "string"
      }
    }

Try it now

200 OK

Successful operation

type
Chart

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getHubExperiment": {
          "apiVersion": "string",
          "kind": "string"
        }
      }
    }

ChaosHub

## Get Experiment YAML

With this query, user can fetch engine or experiment manifest from a Chaos Hub.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
chartName | - | Mandatory
experimentName | - | Mandatory
hubName | - | Mandatory
fileType | ENGINE/EXPERIMENT/CSV | Mandatory

request:
ExperimentRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getYAMLData($request: ExperimentRequest!){
      getYAMLData(request: $request)
    }

##### Variables

    {
      "request": {
        "projectID": "string",
        "chartName": "string",
        "experimentName": "string",
        "hubName": "string",
        "fileType": "string"
      }
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getYAMLData": "string"
      }
    }

ChaosHub

## List Pre-defined Workflow

List of all the pre-defined workflows present in a ChaosHub

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
hubName | - | Mandatory

hubName:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listPredefinedWorkflows($hubName: String!, $projectID: String!){
      listPredefinedWorkflows(hubName: $hubName, projectID: $projectID)
    }

##### Variables

    {
      "hubName": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
string[]

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listPredefinedWorkflows": [
          "string"
        ]
      }
    }

ChaosHub

## Get Pre-defined Workflow Manifest

With this query, user can fetch pre-defined workflow manifest.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
chartName | predefined | Mandatory
experimentName | "" | Mandatory
hubName | - | Mandatory
fileType | - | Optional

request:
ExperimentRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getPredefinedExperimentYAML($request: ExperimentRequest!){
      getPredefinedExperimentYAML(request: $request)
    }

##### Variables

    {
      "request": {
        "projectID": "string",
        "chartName": "string",
        "experimentName": "string",
        "hubName": "string",
        "fileType": "string"
      }
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getPredefinedExperimentYAML": "string"
      }
    }

# Workflow Management

Workflow Management APIs are used to manage the workflows related operations. These allow the user to use custom image registries and use gitops functionality for the chaos workflows.

Workflow Management

## Enable GitOps

This query is used to enable gitops functionality

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
branch | - | Mandatory
repoURL | - | Mandatory
authType | BASIC/NONE/SSH/TOKEN | Mandatory
token | - | Mandatory
userName | - | Optional
password | - | Optional
sshPrivateKey | - | Mandatory

config:
GitConfig

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation enableGitOps($config: GitConfig!){
      enableGitOps(config: $config)
    }

##### Variables

    {
      "config": {
        "projectID": "string",
        "branch": "string",
        "repoURL": "string",
        "authType": "string",
        "token": "string",
        "userName": "string",
        "password": "string",
        "sshPrivateKey": "string"
      }
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "enableGitOps": "boolean"
      }
    }

Workflow Management

## Disable GitOps

This query is used to disable gitops functionality

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation disableGitOps($projectID: String!){
      disableGitOps(projectID: $projectID)
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "disableGitOps": "boolean"
      }
    }

Workflow Management

## Get GitOps Details

This query is used to get the gitops details and configurations

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getGitOpsDetails($projectID: String!){
      getGitOpsDetails(projectID: $projectID){
        enabled
        projectID
        branch
        repoURL
        authType
        token
        userName
        password
        sshPrivateKey
      }
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
GitConfigResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getGitOpsDetails": {
          "enabled": "boolean",
          "projectID": "string",
          "branch": "string",
          "repoURL": "string",
          "token": "string",
          "userName": "string",
          "password": "string",
          "sshPrivateKey": "string"
        }
      }
    }

Workflow Management

## Update GitOps

This query is used to update the gitops details and configurations

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
branch | - | Mandatory
repoURL | - | Mandatory
authType | BASIC/NONE/SSH/TOKEN | Mandatory
token | - | Mandatory
userName | - | Optional
password | - | Optional
sshPrivateKey | - | Mandatory

config:
GitConfig

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateGitOps($config: GitConfig!){
      updateGitOps(config: $config)
    }

##### Variables

    {
      "config": {
        "projectID": "string",
        "branch": "string",
        "repoURL": "string",
        "authType": "string",
        "token": "string",
        "userName": "string",
        "password": "string",
        "sshPrivateKey": "string"
      }
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateGitOps": "boolean"
      }
    }

Workflow Management

## List Image Regisry

This query is used to list all the image registries.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listImageRegistry($projectID: String!){
      listImageRegistry(projectID: $projectID){
        isDefault
        imageRegistryID
        projectID
        updatedAt
        createdAt
        isRemoved
      }
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
ImageRegistryResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listImageRegistry": [
          {
            "isDefault": "boolean",
            "imageRegistryID": "string",
            "projectID": "string",
            "updatedAt": "string",
            "createdAt": "string",
            "isRemoved": "boolean"
          }
        ]
      }
    }

Workflow Management

## Create Image Registry

This query is used to create a new image registry.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
isDefault | true/false | Mandatory
imageRegistryName | - | Mandatory
imageRepoName | - | Mandatory
imageRegistryType | - | Mandatory
secretName | - | Optional
secretNamespace | - | Optional
enableRegistry | - | Optional

projectID:
string

(no description)

imageRegistryInfo:
ImageRegistryInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation createImageRegistry($projectID: String!, $imageRegistryInfo: ImageRegistryInput!){
      createImageRegistry(projectID: $projectID, imageRegistryInfo: $imageRegistryInfo){
        isDefault
        imageRegistryID
        projectID
        updatedAt
        createdAt
        isRemoved
      }
    }

##### Variables

    {
      "projectID": "string",
      "imageRegistryInfo": {
        "isDefault": "boolean",
        "imageRegistryName": "string",
        "imageRepoName": "string",
        "imageRegistryType": "string",
        "secretName": "string",
        "secretNamespace": "string",
        "enableRegistry": "boolean"
      }
    }

Try it now

200 OK

Successful operation

type
ImageRegistryResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "createImageRegistry": {
          "isDefault": "boolean",
          "imageRegistryID": "string",
          "projectID": "string",
          "updatedAt": "string",
          "createdAt": "string",
          "isRemoved": "boolean"
        }
      }
    }

Workflow Management

## Get Image Registry

This query is used to get the the image registry from the project_id and image_registry_id

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
imageRegistryID | - | Mandatory

imageRegistryID:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getImageRegistry($imageRegistryID: String!, $projectID: String!){
      getImageRegistry(imageRegistryID: $imageRegistryID, projectID: $projectID){
        isDefault
        imageRegistryID
        projectID
        updatedAt
        createdAt
        isRemoved
      }
    }

##### Variables

    {
      "imageRegistryID": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
ImageRegistryResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getImageRegistry": {
          "isDefault": "boolean",
          "imageRegistryID": "string",
          "projectID": "string",
          "updatedAt": "string",
          "createdAt": "string",
          "isRemoved": "boolean"
        }
      }
    }

Workflow Management

## Update Image Registry

This query is used to update the image registry.

Field | Possible values | Mandatory/Optional
--- | --- | ---
imageRegistryID | - | Mandatory
projectID | - | Mandatory
isDefault | true/false | Mandatory
imageRegistryName | - | Mandatory
imageRepoName | - | Mandatory
imageRegistryType | - | Mandatory
secretName | - | Optional
secretNamespace | - | Optional
enableRegistry | - | Optional

imageRegistryID:
string

(no description)

projectID:
string

(no description)

imageRegistryInfo:
ImageRegistryInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateImageRegistry($imageRegistryID: String!, $projectID: String!, $imageRegistryInfo: ImageRegistryInput!){
      updateImageRegistry(imageRegistryID: $imageRegistryID, projectID: $projectID, imageRegistryInfo: $imageRegistryInfo){
        isDefault
        imageRegistryID
        projectID
        updatedAt
        createdAt
        isRemoved
      }
    }

##### Variables

    {
      "imageRegistryID": "string",
      "projectID": "string",
      "imageRegistryInfo": {
        "isDefault": "boolean",
        "imageRegistryName": "string",
        "imageRepoName": "string",
        "imageRegistryType": "string",
        "secretName": "string",
        "secretNamespace": "string",
        "enableRegistry": "boolean"
      }
    }

Try it now

200 OK

Successful operation

type
ImageRegistryResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateImageRegistry": {
          "isDefault": "boolean",
          "imageRegistryID": "string",
          "projectID": "string",
          "updatedAt": "string",
          "createdAt": "string",
          "isRemoved": "boolean"
        }
      }
    }

Workflow Management

## Delete Image Registry

This API is used to delete the image registry

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
imageRegistryID | - | Mandatory

imageRegistryID:
string

(no description)

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteImageRegistry($imageRegistryID: String!, $projectID: String!){
      deleteImageRegistry(imageRegistryID: $imageRegistryID, projectID: $projectID)
    }

##### Variables

    {
      "imageRegistryID": "string",
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteImageRegistry": "string"
      }
    }

# Analytics

Analytics allows user to visualize the chaos metrics with the help of different dashboards and graphs present in the Litmus Portal.

Analytics

## List Heatmap Data

This query is used to get year-wise calendar heatmap of daily average resilience scores for workflow runs.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowID | - | Mandatory
year | - | Mandatory

projectID:
string

(no description)

workflowID:
string

(no description)

year:
integer

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listHeatmapData($projectID: String!, $workflowID: String!, $year: Int!){
      listHeatmapData(projectID: $projectID, workflowID: $workflowID, year: $year){
      }
    }

##### Variables

    {
      "projectID": "string",
      "workflowID": "string",
      "year": "integer"
    }

Try it now

200 OK

Successful operation

type
HeatmapDataResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listHeatmapData": [
          {}
        ]
      }
    }

Analytics

## List Workflow Stats

This query is used to get monthly, daily and hourly workflow schedule and run statistics as a time series.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
filter | - | Mandatory
showWorkflowRuns | - | Mandatory

projectID:
string

(no description)

filter:
TimeFrequency

(no description)

showWorkflowRuns:
boolean

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listWorkflowStats($projectID: ID!, $filter: TimeFrequency!, $showWorkflowRuns: Boolean!){
      listWorkflowStats(projectID: $projectID, filter: $filter, showWorkflowRuns: $showWorkflowRuns){
        date
        value
      }
    }

##### Variables

    {
      "projectID": "string",
      "filter": "string",
      "showWorkflowRuns": "boolean"
    }

Try it now

200 OK

Successful operation

type
WorkflowStatsResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listWorkflowStats": [
          {
            "date": "number",
            "value": "integer"
          }
        ]
      }
    }

Analytics

## Get Workflow Run Stats

This query is used to get aggregated workflow and experiment statistics for completed runs of selected schedules.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
workflowIDs | - | Optional

workflowRunStatsRequest:
WorkflowRunStatsRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getWorkflowRunStats($workflowRunStatsRequest: WorkflowRunStatsRequest!){
      getWorkflowRunStats(workflowRunStatsRequest: $workflowRunStatsRequest){
        totalWorkflowRuns
        succeededWorkflowRuns
        failedWorkflowRuns
        runningWorkflowRuns
        averageResiliencyScore
        totalExperiments
        experimentsPassed
        experimentsFailed
        experimentsAwaited
        experimentsStopped
        experimentsNa
        passedPercentage
        failedPercentage
        workflowRunSucceededPercentage
        workflowRunFailedPercentage
      }
    }

##### Variables

    {
      "workflowRunStatsRequest": {
        "projectID": "object",
        "workflowIDs": [
          "object"
        ]
      }
    }

Try it now

200 OK

Successful operation

type
WorkflowRunStatsResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getWorkflowRunStats": {
          "totalWorkflowRuns": "integer",
          "succeededWorkflowRuns": "integer",
          "failedWorkflowRuns": "integer",
          "runningWorkflowRuns": "integer",
          "averageResiliencyScore": "number",
          "totalExperiments": "integer",
          "experimentsPassed": "integer",
          "experimentsFailed": "integer",
          "experimentsAwaited": "integer",
          "experimentsStopped": "integer",
          "experimentsNa": "integer",
          "passedPercentage": "number",
          "failedPercentage": "number",
          "workflowRunSucceededPercentage": "number",
          "workflowRunFailedPercentage": "number"
        }
      }
    }

Analytics

## List DataSource

This query is used to list all connected data sources in a project.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory

projectID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listDataSource($projectID: String!){
      listDataSource(projectID: $projectID){
        dsID
        dsName
        dsType
        dsURL
        accessType
        authType
        basicAuthUsername
        basicAuthPassword
        scrapeInterval
        queryTimeout
        httpMethod
        projectID
        healthStatus
        createdAt
        updatedAt
      }
    }

##### Variables

    {
      "projectID": "string"
    }

Try it now

200 OK

Successful operation

type
DSResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listDataSource": [
          {
            "dsID": "string",
            "dsName": "string",
            "dsType": "string",
            "dsURL": "string",
            "accessType": "string",
            "authType": "string",
            "basicAuthUsername": "string",
            "basicAuthPassword": "string",
            "scrapeInterval": "integer",
            "queryTimeout": "integer",
            "httpMethod": "string",
            "projectID": "string",
            "healthStatus": "string",
            "createdAt": "string",
            "updatedAt": "string"
          }
        ]
      }
    }

Analytics

## Get Prometheus Data

This query is used to get prometheus time series data from promQL queries and data source details.

Field | Possible values | Mandatory/Optional
--- | --- | ---
queryID | - | Mandatory
query | - | Mandatory
legend | - | Optional
resolution | - | Optional
minstep | - | Mandatory
url | - | Mandatory
start | - | Mandatory
end | - | Mandatory

request:
PrometheusDataRequest

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getPrometheusData($request: PrometheusDataRequest){
      getPrometheusData(request: $request){
      }
    }

##### Variables

    {
      "request": {
        "queries": [
          {
            "queryID": "string",
            "query": "string",
            "legend": "string",
            "resolution": "string",
            "minstep": "number"
          }
        ],
        "dsDetails": {
          "url": "string",
          "start": "string",
          "end": "string"
        }
      }
    }

Try it now

200 OK

Successful operation

type
PrometheusDataResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getPrometheusData": {}
      }
    }

Analytics

## Get Prom Label names and values

This query is used to get labels and values associated with a prometheus metric and a given data source.

Field | Possible values | Mandatory/Optional
--- | --- | ---
series | - | Mandatory
url | - | Mandatory
start | - | Mandatory
end | - | Mandatory

request:
PromSeriesInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getPromLabelNamesAndValues($request: PromSeriesInput){
      getPromLabelNamesAndValues(request: $request){
        series
      }
    }

##### Variables

    {
      "request": {
        "series": "string",
        "dsDetails": {
          "url": "string",
          "start": "string",
          "end": "string"
        }
      }
    }

Try it now

200 OK

Successful operation

type
PromSeriesResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getPromLabelNamesAndValues": {
          "series": "string"
        }
      }
    }

Analytics

## Get Prom Series List

This query is used to get a list of all time series metric names available on a prometheus data source.

Field | Possible values | Mandatory/Optional
--- | --- | ---
url | - | Mandatory
start | - | Mandatory
end | - | Mandatory

request:
DsDetails

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query getPromSeriesList($request: DsDetails){
      getPromSeriesList(request: $request){
        seriesList
      }
    }

##### Variables

    {
      "request": {
        "url": "string",
        "start": "string",
        "end": "string"
      }
    }

Try it now

200 OK

Successful operation

type
PromSeriesListResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "getPromSeriesList": {
          "seriesList": [
            "string"
          ]
        }
      }
    }

Analytics

## List Dashboard

This query is used to list all dashboards created in a project.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
clusterID | - | Optional
dbID | - | Optional

projectID:
string

(no description)

clusterID:
string

(no description)

dbID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listDashboard($projectID: String!, $clusterID: String, $dbID: String){
      listDashboard(projectID: $projectID, clusterID: $clusterID, dbID: $dbID){
        dsID
        dbID
        dbName
        dbTypeID
        dbTypeName
        dbInformation
        chaosEventQueryTemplate
        chaosVerdictQueryTemplate
        clusterName
        dsName
        dsType
        dsURL
        dsHealthStatus
        endTime
        startTime
        refreshRate
        projectID
        clusterID
        createdAt
        updatedAt
        viewedAt
      }
    }

##### Variables

    {
      "projectID": "string",
      "clusterID": "string",
      "dbID": "string"
    }

Try it now

200 OK

Successful operation

type
ListDashboardResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listDashboard": [
          {
            "dsID": "string",
            "dbID": "string",
            "dbName": "string",
            "dbTypeID": "string",
            "dbTypeName": "string",
            "dbInformation": "string",
            "chaosEventQueryTemplate": "string",
            "chaosVerdictQueryTemplate": "string",
            "clusterName": "string",
            "dsName": "string",
            "dsType": "string",
            "dsURL": "string",
            "dsHealthStatus": "string",
            "endTime": "string",
            "startTime": "string",
            "refreshRate": "string",
            "projectID": "string",
            "clusterID": "string",
            "createdAt": "string",
            "updatedAt": "string",
            "viewedAt": "string"
          }
        ]
      }
    }

Analytics

## List Portal Dashboard Data

This query is used to list all pre-configured dashboard templates available in litmus center.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
hubName | - | Mandatory

projectID:
string

(no description)

hubName:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    query listPortalDashboardData($projectID: String!, $hubName: String!){
      listPortalDashboardData(projectID: $projectID, hubName: $hubName){
        name
        dashboardData
      }
    }

##### Variables

    {
      "projectID": "string",
      "hubName": "string"
    }

Try it now

200 OK

Successful operation

type
PortalDashboardDataResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "listPortalDashboardData": [
          {
            "name": "string",
            "dashboardData": "string"
          }
        ]
      }
    }

Analytics

## Create DataSource

This mutation is used to add a prometheus data source to the project which serves as a metrics collector for agent clusters.

Field | Possible values | Mandatory/Optional
--- | --- | ---
dsID | - | Optional
dsName | - | Mandatory
dsType | - | Mandatory
dsURL | - | Mandatory
accessType | - | Mandatory
authType | - | Mandatory
basicAuthUsername | - | Optional
basicAuthPassword | - | Optional
scrapeInterval | - | Mandatory
queryTimeout | - | Mandatory
httpMethod | - | Mandatory
projectID | - | Optional

###### Example Body:

{

"dsName": "sample data source",
"dsType": "Prometheus",
"accessType": "Server (Default)",
"authType": "no auth",
"basicAuthPassword": "",
"basicAuthUsername": "",
"dsURL": "https://demo.com:9090",
"httpMethod": "POST",
"projectID": "4c3d0513-5988-446e-8ce5-1a4c6fb274f3",
"queryTimeout": "30",
"scrapeInterval": "15",

}
datasource:
DSInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation createDataSource($datasource: DSInput){
      createDataSource(datasource: $datasource){
        dsID
        dsName
        dsType
        dsURL
        accessType
        authType
        basicAuthUsername
        basicAuthPassword
        scrapeInterval
        queryTimeout
        httpMethod
        projectID
        healthStatus
        createdAt
        updatedAt
      }
    }

##### Variables

    {
      "datasource": {
        "dsID": "string",
        "dsName": "string",
        "dsType": "string",
        "dsURL": "string",
        "accessType": "string",
        "authType": "string",
        "basicAuthUsername": "string",
        "basicAuthPassword": "string",
        "scrapeInterval": "number",
        "queryTimeout": "number",
        "httpMethod": "string",
        "projectID": "string"
      }
    }

Try it now

200 OK

Successful operation

type
DSResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "createDataSource": {
          "dsID": "string",
          "dsName": "string",
          "dsType": "string",
          "dsURL": "string",
          "accessType": "string",
          "authType": "string",
          "basicAuthUsername": "string",
          "basicAuthPassword": "string",
          "scrapeInterval": "integer",
          "queryTimeout": "integer",
          "httpMethod": "string",
          "projectID": "string",
          "healthStatus": "string",
          "createdAt": "string",
          "updatedAt": "string"
        }
      }
    }

Analytics

## Create Dashboard

This mutation is used to create an application dashboard providing agent information, data source details and prometheus queries.

Field | Possible values | Mandatory/Optional
--- | --- | ---
dsID | - | Mandatory
dbName | - | Mandatory
dbTypeName | - | Mandatory
dbTypeID | - | Mandatory
dbInformation | - | Optional
chaosEventQueryTemplate | - | Mandatory
chaosVerdictQueryTemplate | - | Mandatory
namespace | - | Mandatory
kind | - | Mandatory
names | - | Optional
panelID | - | Optional
dbID | - | Optional
yAxisLeft | - | Optional
yAxisRight | - | Optional
xAxisDown | - | Optional
unit | - | Optional
panelGroupID | - | Optional
createdAt | - | Optional
queryID | - | Mandatory
promQueryName | - | Optional
legend | - | Optional
resolution | - | Optional
minstep | - | Optional
line | - | Optional
closeArea | - | Optional
points | - | Optional
grIDs | - | Optional
leftAxis | - | Optional
panelName | - | Mandatory
panelGroupName | - | Mandatory
endTime | - | Mandatory
startTime | - | Mandatory
projectID | - | Mandatory
clusterID | - | Mandatory
refreshRate | - | Mandatory

dashboard:
CreateDBInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation createDashBoard($dashboard: CreateDBInput){
      createDashBoard(dashboard: $dashboard){
        dsID
        dbID
        dbName
        dbTypeID
        dbTypeName
        dbInformation
        chaosEventQueryTemplate
        chaosVerdictQueryTemplate
        clusterName
        dsName
        dsType
        dsURL
        dsHealthStatus
        endTime
        startTime
        refreshRate
        projectID
        clusterID
        createdAt
        updatedAt
        viewedAt
      }
    }

##### Variables

    {
      "dashboard": {
        "dsID": "string",
        "dbName": "string",
        "dbTypeName": "string",
        "dbTypeID": "string",
        "dbInformation": "string",
        "chaosEventQueryTemplate": "string",
        "chaosVerdictQueryTemplate": "string",
        "applicationMetadataMap": [
          {
            "namespace": "string",
            "applications": [
              {
                "kind": "string",
                "names": [
                  "string"
                ]
              }
            ]
          }
        ],
        "panelGroups": [
          {
            "panels": [
              {
                "panelID": "string",
                "dbID": "string",
                "yAxisLeft": "string",
                "yAxisRight": "string",
                "xAxisDown": "string",
                "unit": "string",
                "panelGroupID": "string",
                "createdAt": "string",
                "promQueries": [
                  {
                    "queryID": "string",
                    "promQueryName": "string",
                    "legend": "string",
                    "resolution": "string",
                    "minstep": "string",
                    "line": "boolean",
                    "closeArea": "boolean"
                  }
                ],
                "panelOptions": {
                  "points": "boolean",
                  "grIDs": "boolean",
                  "leftAxis": "boolean"
                },
                "panelName": "string"
              }
            ],
            "panelGroupName": "string"
          }
        ],
        "endTime": "string",
        "startTime": "string",
        "projectID": "object",
        "clusterID": "object",
        "refreshRate": "string"
      }
    }

Try it now

200 OK

Successful operation

type
ListDashboardResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "createDashBoard": {
          "dsID": "string",
          "dbID": "string",
          "dbName": "string",
          "dbTypeID": "string",
          "dbTypeName": "string",
          "dbInformation": "string",
          "chaosEventQueryTemplate": "string",
          "chaosVerdictQueryTemplate": "string",
          "clusterName": "string",
          "dsName": "string",
          "dsType": "string",
          "dsURL": "string",
          "dsHealthStatus": "string",
          "endTime": "string",
          "startTime": "string",
          "refreshRate": "string",
          "projectID": "string",
          "clusterID": "string",
          "createdAt": "string",
          "updatedAt": "string",
          "viewedAt": "string"
        }
      }
    }

Analytics

## Update DataSource

This mutation is used to update a connected data source's information.

Field | Possible values | Mandatory/Optional
--- | --- | ---
dsID | - | Optional
dsName | - | Mandatory
dsType | - | Mandatory
dsURL | - | Mandatory
accessType | - | Mandatory
authType | - | Mandatory
basicAuthUsername | - | Optional
basicAuthPassword | - | Optional
scrapeInterval | - | Mandatory
queryTimeout | - | Mandatory
httpMethod | - | Mandatory
projectID | - | Optional

###### Example Body:

{

"dsID": "sample data source",
"dsName": "sample data source",
"dsType": "Prometheus",
"accessType": "Server (Default)",
"authType": "no auth",
"basicAuthPassword": "",
"basicAuthUsername": "",
"dsURL": "https://demo.com:9090",
"httpMethod": "POST",
"projectID": "4c3d0513-5988-446e-8ce5-1a4c6fb274f3",
"queryTimeout": "30",
"scrapeInterval": "15",

}
datasource:
DSInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateDataSource($datasource: DSInput!){
      updateDataSource(datasource: $datasource){
        dsID
        dsName
        dsType
        dsURL
        accessType
        authType
        basicAuthUsername
        basicAuthPassword
        scrapeInterval
        queryTimeout
        httpMethod
        projectID
        healthStatus
        createdAt
        updatedAt
      }
    }

##### Variables

    {
      "datasource": {
        "dsID": "string",
        "dsName": "string",
        "dsType": "string",
        "dsURL": "string",
        "accessType": "string",
        "authType": "string",
        "basicAuthUsername": "string",
        "basicAuthPassword": "string",
        "scrapeInterval": "number",
        "queryTimeout": "number",
        "httpMethod": "string",
        "projectID": "string"
      }
    }

Try it now

200 OK

Successful operation

type
DSResponse

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateDataSource": {
          "dsID": "string",
          "dsName": "string",
          "dsType": "string",
          "dsURL": "string",
          "accessType": "string",
          "authType": "string",
          "basicAuthUsername": "string",
          "basicAuthPassword": "string",
          "scrapeInterval": "integer",
          "queryTimeout": "integer",
          "httpMethod": "string",
          "projectID": "string",
          "healthStatus": "string",
          "createdAt": "string",
          "updatedAt": "string"
        }
      }
    }

Analytics

## Update Dashboard

This mutation is used to update a dashboard's information and details.

Field | Possible values | Mandatory/Optional
--- | --- | ---
dbID | - | Mandatory
dsID | - | Optional
dbName | - | Optional
dbTypeName | - | Optional
dbTypeID | - | Optional
dbInformation | - | Optional
chaosEventQueryTemplate | - | Optional
chaosVerdictQueryTemplate | - | Optional
namespace | - | Optional
kind | - | Mandatory
names | - | Optional
panelID | - | Optional
yAxisLeft | - | Optional
yAxisRight | - | Optional
xAxisDown | - | Optional
unit | - | Optional
panelGroupID | - | Optional
createdAt | - | Optional
queryID | - | Mandatory
promQueryName | - | Optional
legend | - | Optional
resolution | - | Optional
minstep | - | Optional
line | - | Optional
closeArea | - | Optional
points | - | Optional
grIDs | - | Optional
leftAxis | - | Optional
panelName | - | Mandatory
panelGroupName | - | Mandatory
endTime | - | Optional
startTime | - | Optional
projectID | - | Optional
clusterID | - | Optional
refreshRate | - | Optional
chaosQueryUpdate | - | Optional

projectID:
string

(no description)

dashboard:
UpdateDBInput

(no description)

chaosQueryUpdate:
boolean

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updateDashboard($projectID: String!, $dashboard: UpdateDBInput!, $chaosQueryUpdate: Boolean!){
      updateDashboard(projectID: $projectID, dashboard: $dashboard, chaosQueryUpdate: $chaosQueryUpdate)
    }

##### Variables

    {
      "projectID": "string",
      "dashboard": {
        "dbID": "string",
        "dsID": "string",
        "dbName": "string",
        "dbTypeName": "string",
        "dbTypeID": "string",
        "dbInformation": "string",
        "chaosEventQueryTemplate": "string",
        "chaosVerdictQueryTemplate": "string",
        "applicationMetadataMap": [
          {
            "namespace": "string",
            "applications": [
              {
                "kind": "string",
                "names": [
                  "string"
                ]
              }
            ]
          }
        ],
        "panelGroups": [
          {
            "panelGroupName": "string",
            "panelGroupID": "string",
            "panels": [
              {
                "panelID": "string",
                "dbID": "string",
                "yAxisLeft": "string",
                "yAxisRight": "string",
                "xAxisDown": "string",
                "unit": "string",
                "panelGroupID": "string",
                "createdAt": "string",
                "promQueries": [
                  {
                    "queryID": "string",
                    "promQueryName": "string",
                    "legend": "string",
                    "resolution": "string",
                    "minstep": "string",
                    "line": "boolean",
                    "closeArea": "boolean"
                  }
                ],
                "panelOptions": {
                  "points": "boolean",
                  "grIDs": "boolean",
                  "leftAxis": "boolean"
                },
                "panelName": "string"
              }
            ]
          }
        ],
        "endTime": "string",
        "startTime": "string",
        "clusterID": "object",
        "refreshRate": "string"
      },
      "chaosQueryUpdate": "boolean"
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updateDashboard": "string"
      }
    }

Analytics

## Update Panel

This mutation is used to update prometheus queries and panel details for selected panels.

panelID | - | Optional
yAxisLeft | - | Optional
yAxisRight | - | Optional
xAxisDown | - | Optional
unit | - | Optional
panelGroupID | - | Optional
createdAt | - | Optional
queryID | - | Mandatory
promQueryName | - | Optional
legend | - | Optional
resolution | - | Optional
minstep | - | Optional
line | - | Optional
closeArea | - | Optional
points | - | Optional
grIDs | - | Optional
leftAxis | - | Optional
panelName | - | Mandatory

panelInput:
Panel

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation updatePanel($panelInput: [Panel]){
      updatePanel(panelInput: $panelInput)
    }

##### Variables

    {
      "panelInput": [
        {
          "panelID": "string",
          "dbID": "string",
          "yAxisLeft": "string",
          "yAxisRight": "string",
          "xAxisDown": "string",
          "unit": "string",
          "panelGroupID": "string",
          "createdAt": "string",
          "promQueries": [
            {
              "queryID": "string",
              "promQueryName": "string",
              "legend": "string",
              "resolution": "string",
              "minstep": "string",
              "line": "boolean",
              "closeArea": "boolean"
            }
          ],
          "panelOptions": {
            "points": "boolean",
            "grIDs": "boolean",
            "leftAxis": "boolean"
          },
          "panelName": "string"
        }
      ]
    }

Try it now

200 OK

Successful operation

type
string

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "updatePanel": "string"
      }
    }

Analytics

## Delete Dashboard

This mutation is used to delete a dashboard from a project.

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
dbID | - | Optional

projectID:
string

(no description)

dbID:
string

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteDashboard($projectID: String!, $dbID: String){
      deleteDashboard(projectID: $projectID, dbID: $dbID)
    }

##### Variables

    {
      "projectID": "string",
      "dbID": "string"
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteDashboard": "boolean"
      }
    }

Analytics

## Delete DataSource

Disconnect a data source from a project

Field | Possible values | Mandatory/Optional
--- | --- | ---
projectID | - | Mandatory
forceDelete | - | Mandatory
dsID | - | Mandatory

projectID:
string

(no description)

input:
DeleteDSInput

(no description)

#### Example

##### Request Content-Types: application/json

##### Query

    mutation deleteDataSource($projectID: String!, $input: DeleteDSInput!){
      deleteDataSource(projectID: $projectID, input: $input)
    }

##### Variables

    {
      "projectID": "string",
      "input": {
        "forceDelete": "boolean",
        "dsID": "object"
      }
    }

Try it now

200 OK

Successful operation

type
boolean

##### Response Content-Types: application/json

##### Response Example (200 OK)

    {
      "data": {
        "deleteDataSource": "boolean"
      }
    }

# Schema Definitions

## ActionPayload: object

requestType:
object

return:
String
arguments:
object

k8sManifest:
object

return:
String
arguments:
object

namespace:
object

return:
String
arguments:
object

externalData:
object

return:
String
arguments:
object

username:
object

return:
String
arguments:
object

##### Example

    {
      "requestType": {
        "return": "string",
        "arguments": {}
      },
      "k8sManifest": {
        "return": "string",
        "arguments": {}
      },
      "namespace": {
        "return": "string",
        "arguments": {}
      },
      "externalData": {
        "return": "string",
        "arguments": {}
      },
      "username": {
        "return": "string",
        "arguments": {}
      }
    }

## AgentStat: object

Defines details of agent statistics

ns:
object

  Number of namespaces

return:
Int
arguments:
object

cluster:
object

  Number of clusters

return:
Int
arguments:
object

total:
object

  Total number of agents

return:
Int
arguments:
object

active:
object

  Number of active agents

return:
Int
arguments:
object

##### Example

    {
      "ns": {
        "return": "number",
        "arguments": {}
      },
      "cluster": {
        "return": "number",
        "arguments": {}
      },
      "total": {
        "return": "number",
        "arguments": {}
      },
      "active": {
        "return": "number",
        "arguments": {}
      }
    }

## Annotation: object

categories:
object

return:
String
arguments:
object

vendor:
object

return:
String
arguments:
object

createdAt:
object

return:
String
arguments:
object

repository:
object

return:
String
arguments:
object

support:
object

return:
String
arguments:
object

chartDescription:
object

return:
String
arguments:
object

##### Example

    {
      "categories": {
        "return": "string",
        "arguments": {}
      },
      "vendor": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "repository": {
        "return": "string",
        "arguments": {}
      },
      "support": {
        "return": "string",
        "arguments": {}
      },
      "chartDescription": {
        "return": "string",
        "arguments": {}
      }
    }

## AnnotationsPromResponse: object

queryID:
object

return:
String
arguments:
object

legends:
object

return:
String
arguments:
object

tsvs:
object

return:
object[][]
arguments:
object

subDataArray:
object

return:
object[][]
arguments:
object

##### Example

    {
      "queryID": {
        "return": "string",
        "arguments": {}
      },
      "legends": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "tsvs": {
        "return": [
          [
            {
              "date": {
                "return": "number",
                "arguments": {}
              },
              "value": {
                "return": "number",
                "arguments": {}
              }
            }
          ]
        ],
        "arguments": {}
      },
      "subDataArray": {
        "return": [
          [
            {
              "date": {
                "return": "number",
                "arguments": {}
              },
              "value": {
                "return": "string",
                "arguments": {}
              },
              "subDataName": {
                "return": "string",
                "arguments": {}
              }
            }
          ]
        ],
        "arguments": {}
      }
    }

## AnnotationsTimeStampValue: object

date:
object

return:
Float
arguments:
object

value:
object

return:
Int
arguments:
object

##### Example

    {
      "date": {
        "return": "number",
        "arguments": {}
      },
      "value": {
        "return": "number",
        "arguments": {}
      }
    }

## ApplicationMetadata: object

namespace:
String
applications:
Resource

##### Example

    {
      "namespace": "string",
      "applications": [
        {
          "kind": "string",
          "names": [
            "string"
          ]
        }
      ]
    }

## ApplicationMetadataResponse: object

namespace:
object

return:
String
arguments:
object

applications:
object

return:
ResourceResponse
arguments:
object

##### Example

    {
      "namespace": {
        "return": "string",
        "arguments": {}
      },
      "applications": {
        "return": [
          {
            "kind": {
              "return": "string",
              "arguments": {}
            },
            "names": {
              "return": [
                "string"
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## AuthType: string

object
BASIC
object
NONE
object
SSH
object
TOKEN

## Boolean: boolean

The `Boolean` scalar type represents `true` or `false`.

##### Example

    boolean

## ChaosHub: object

id:
object

  ID of the chaos hub

return:
ID
arguments:
object

repoURL:
object

  URL of the git repository

return:
String
arguments:
object

repoBranch:
object

  Branch of the git repository

return:
String
arguments:
object

projectID:
object

  ID of the project in which the chaos hub is present

return:
String
arguments:
object

hubName:
object

  Name of the chaos hub

return:
String
arguments:
object

isPrivate:
object

  Bool value indicating whether the hub is private or not.

return:
Boolean
arguments:
object

authType:
object

  Type of authentication used: BASIC, SSH, TOKEN

return:
AuthType
arguments:
object

token:
object

  Token for authentication of private chaos hub

return:
String
arguments:
object

userName:
object

  Git username

return:
String
arguments:
object

password:
object

  Git password

return:
String
arguments:
object

sshPrivateKey:
object

  Private SSH key for authenticating into private chaos hub

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating if the chaos hub is removed

return:
Boolean
arguments:
object

createdAt:
object

  Timestamp when the chaos hub was created

return:
String
arguments:
object

updatedAt:
object

  Timestamp when the chaos hub was last updated

return:
String
arguments:
object

lastSyncedAt:
object

  Timestamp when the chaos hub was last synced

return:
String
arguments:
object

##### Example

    {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "repoURL": {
        "return": "string",
        "arguments": {}
      },
      "repoBranch": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "string",
        "arguments": {}
      },
      "hubName": {
        "return": "string",
        "arguments": {}
      },
      "isPrivate": {
        "return": "boolean",
        "arguments": {}
      },
      "authType": {
        "return": "string",
        "arguments": {}
      },
      "token": {
        "return": "string",
        "arguments": {}
      },
      "userName": {
        "return": "string",
        "arguments": {}
      },
      "password": {
        "return": "string",
        "arguments": {}
      },
      "sshPrivateKey": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "updatedAt": {
        "return": "string",
        "arguments": {}
      },
      "lastSyncedAt": {
        "return": "string",
        "arguments": {}
      }
    }

## ChaosHubStatus: object

id:
object

  ID of the hub

return:
ID
arguments:
object

repoURL:
object

  URL of the git repository

return:
String
arguments:
object

repoBranch:
object

  Branch of the git repository

return:
String
arguments:
object

isAvailable:
object

  Bool value indicating whether the hub is available or not.

return:
Boolean
arguments:
object

totalExp:
object

  Total number of experiments in the hub

return:
String
arguments:
object

hubName:
object

  Name of the chaos hub

return:
String
arguments:
object

isPrivate:
object

  Bool value indicating whether the hub is private or not.

return:
Boolean
arguments:
object

authType:
object

  Type of authentication used: BASIC, SSH, TOKEN

return:
AuthType
arguments:
object

token:
object

  Token for authentication of private chaos hub

return:
String
arguments:
object

userName:
object

  Git username

return:
String
arguments:
object

password:
object

  Git password

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating whether the hub is private or not.

return:
Boolean
arguments:
object

sshPrivateKey:
object

  Private SSH key for authenticating into private chaos hub

return:
String
arguments:
object

sshPublicKey:
object

  Public SSH key for authenticating into private chaos hub

return:
String
arguments:
object

lastSyncedAt:
object

  Timestamp when the chaos hub was last synced

return:
String
arguments:
object

##### Example

    {
      "id": {
        "return": "object",
        "arguments": {}
      },
      "repoURL": {
        "return": "string",
        "arguments": {}
      },
      "repoBranch": {
        "return": "string",
        "arguments": {}
      },
      "isAvailable": {
        "return": "boolean",
        "arguments": {}
      },
      "totalExp": {
        "return": "string",
        "arguments": {}
      },
      "hubName": {
        "return": "string",
        "arguments": {}
      },
      "isPrivate": {
        "return": "boolean",
        "arguments": {}
      },
      "authType": {
        "return": "string",
        "arguments": {}
      },
      "token": {
        "return": "string",
        "arguments": {}
      },
      "userName": {
        "return": "string",
        "arguments": {}
      },
      "password": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      },
      "sshPrivateKey": {
        "return": "string",
        "arguments": {}
      },
      "sshPublicKey": {
        "return": "string",
        "arguments": {}
      },
      "lastSyncedAt": {
        "return": "string",
        "arguments": {}
      }
    }

## ChaosWorkFlowRequest: object

Defines the details for a chaos workflow

workflowID:
String

  ID of the workflow

workflowManifest:
String

  Manifest of the workflow

cronSyntax:
String

  Cron syntax of the workflow schedule

workflowName:
String

  Name of the workflow

workflowDescription:
String

  Description of the workflow

weightages:
WeightagesInput

  Array containing weightage and name of each chaos experiment in the workflow

isCustomWorkflow:
Boolean

  Bool value indicating whether the workflow is a custom workflow or not

projectID:
ID

  ID of the project under which the workflow is scheduled

clusterID:
ID

  ID of the target cluster in which the workflow will run

##### Example

    {
      "workflowID": "string",
      "workflowManifest": "string",
      "cronSyntax": "string",
      "workflowName": "string",
      "workflowDescription": "string",
      "weightages": [
        {
          "experimentName": "string",
          "weightage": "number"
        }
      ],
      "isCustomWorkflow": "boolean",
      "projectID": "object",
      "clusterID": "object"
    }

## ChaosWorkFlowResponse: object

Defines the response received for querying the details of chaos workflow

workflowID:
object

  ID of the workflow

return:
String
arguments:
object

cronSyntax:
object

  Cron syntax of the workflow schedule

return:
String
arguments:
object

workflowName:
object

  Name of the workflow

return:
String
arguments:
object

workflowDescription:
object

  Description of the workflow

return:
String
arguments:
object

isCustomWorkflow:
object

  Bool value indicating whether the workflow is a custom workflow or not

return:
Boolean
arguments:
object

##### Example

    {
      "workflowID": {
        "return": "string",
        "arguments": {}
      },
      "cronSyntax": {
        "return": "string",
        "arguments": {}
      },
      "workflowName": {
        "return": "string",
        "arguments": {}
      },
      "workflowDescription": {
        "return": "string",
        "arguments": {}
      },
      "isCustomWorkflow": {
        "return": "boolean",
        "arguments": {}
      }
    }

## Chart: object

apiVersion:
object

return:
String
arguments:
object

kind:
object

return:
String
arguments:
object

metadata:
object

return:
Metadata
arguments:
object

spec:
object

return:
Spec
arguments:
object

packageInfo:
object

return:
PackageInformation
arguments:
object

##### Example

    {
      "apiVersion": {
        "return": "string",
        "arguments": {}
      },
      "kind": {
        "return": "string",
        "arguments": {}
      },
      "metadata": {
        "return": {
          "name": {
            "return": "string",
            "arguments": {}
          },
          "version": {
            "return": "string",
            "arguments": {}
          },
          "annotations": {
            "return": {
              "categories": {
                "return": "string",
                "arguments": {}
              },
              "vendor": {
                "return": "string",
                "arguments": {}
              },
              "createdAt": {
                "return": "string",
                "arguments": {}
              },
              "repository": {
                "return": "string",
                "arguments": {}
              },
              "support": {
                "return": "string",
                "arguments": {}
              },
              "chartDescription": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "spec": {
        "return": {
          "displayName": {
            "return": "string",
            "arguments": {}
          },
          "categoryDescription": {
            "return": "string",
            "arguments": {}
          },
          "keywords": {
            "return": [
              "string"
            ],
            "arguments": {}
          },
          "maturity": {
            "return": "string",
            "arguments": {}
          },
          "maintainers": {
            "return": [
              {
                "name": {
                  "return": "string",
                  "arguments": {}
                },
                "email": {
                  "return": "string",
                  "arguments": {}
                }
              }
            ],
            "arguments": {}
          },
          "minKubeVersion": {
            "return": "string",
            "arguments": {}
          },
          "provider": {
            "return": {
              "name": {
                "return": "string",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "links": {
            "return": [
              {
                "name": {}
              }
            ]
          }
        }
      }
    }

## CloningInput: object

hubName:
String

  Name of the chaos hub

projectID:
String

  ID of the project

repoBranch:
String

  Branch of the git repository

repoURL:
String

  URL of the git repository

isPrivate:
Boolean

  Bool value indicating whether the hub is private or not.

authType:
AuthType

  Type of authentication used: BASIC, SSH, TOKEN

token:
String

  Token for authentication of private chaos hub

userName:
String

  Git username

password:
String

  Git password

sshPrivateKey:
String

##### Example

    {
      "hubName": "string",
      "projectID": "string",
      "repoBranch": "string",
      "repoURL": "string",
      "isPrivate": "boolean",
      "authType": "string",
      "token": "string",
      "userName": "string",
      "password": "string",
      "sshPrivateKey": "string"
    }

## Cluster: object

Defines the details for a cluster

clusterID:
object

  ID of the cluster

return:
ID
arguments:
object

projectID:
object

  Project ID the cluster is being connected to

return:
ID
arguments:
object

clusterName:
object

  Name of the cluster

return:
String
arguments:
object

description:
object

  Description of the cluster

return:
String
arguments:
object

platformName:
object

  Cluster Platform Name eg. GKE,AWS, Others

return:
String
arguments:
object

accessKey:
object

return:
String
arguments:
object

isRegistered:
object

  Bool value indicating if the cluster agent is registered or not

return:
Boolean
arguments:
object

isClusterConfirmed:
object

  Bool value indicating if the cluster agent is confirmed or not

return:
Boolean
arguments:
object

isActive:
object

  Bool value indicating if the cluster agent is active or not

return:
Boolean
arguments:
object

updatedAt:
object

  Timestamp when the cluster agent was last updated

return:
String
arguments:
object

createdAt:
object

  Timestamp when the cluster agent was created

return:
String
arguments:
object

clusterType:
object

  Cluster type : Internal or External

return:
String
arguments:
object

noOfSchedules:
object

  Number of schedules created in the cluster agent

return:
Int
arguments:
object

noOfWorkflows:
object

  Number of workflows run in the cluster agent

return:
Int
arguments:
object

token:
object

  Token used to verify and retrieve the cluster agent manifest

return:
String
arguments:
object

agentNamespace:
object

  Namespace where the cluster agent is being installed

return:
String
arguments:
object

serviceAccount:
object

  Name of service account used by cluster agent

return:
String
arguments:
object

agentScope:
object

  Scope of the cluster agent : ns or cluster

return:
String
arguments:
object

agentNsExists:
object

  Bool value indicating whether agent ns used already exists on cluster or not

return:
Boolean
arguments:
object

agentSaExists:
object

  Bool value indicating whether service account used already exists on cluster or not

return:
Boolean
arguments:
object

lastWorkflowTimestamp:
object

  Timestamp of the last workflow run in the cluster agent

return:
String
arguments:
object

startTime:
object

  Timestamp when the cluster agent got connected

return:
String
arguments:
object

version:
object

  Version of the cluster agent

return:
String
arguments:
object

##### Example

    {
      "clusterID": {
        "return": "object",
        "arguments": {}
      },
      "projectID": {
        "return": "object",
        "arguments": {}
      },
      "clusterName": {
        "return": "string",
        "arguments": {}
      },
      "description": {
        "return": "string",
        "arguments": {}
      },
      "platformName": {
        "return": "string",
        "arguments": {}
      },
      "accessKey": {
        "return": "string",
        "arguments": {}
      },
      "isRegistered": {
        "return": "boolean",
        "arguments": {}
      },
      "isClusterConfirmed": {
        "return": "boolean",
        "arguments": {}
      },
      "isActive": {
        "return": "boolean",
        "arguments": {}
      },
      "updatedAt": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "clusterType": {
        "return": "string",
        "arguments": {}
      },
      "noOfSchedules": {
        "return": "number",
        "arguments": {}
      },
      "noOfWorkflows": {
        "return": "number",
        "arguments": {}
      },
      "token": {
        "return": "string",
        "arguments": {}
      },
      "agentNamespace": {
        "return": "string",
        "arguments": {}
      },
      "serviceAccount": {
        "return": "string",
        "arguments": {}
      },
      "agentScope": {
        "return": "string",
        "arguments": {}
      },
      "agentNsExists": {
        "return": "boolean",
        "arguments": {}
      },
      "agentSaExists": {
        "return": "boolean",
        "arguments": {}
      },
      "lastWorkflowTimestamp": {
        "return": "string",
        "arguments": {}
      },
      "startTime": {
        "return": "string",
        "arguments": {}
      },
      "version": {
        "return": "string",
        "arguments": {}
      }
    }

## ClusterActionResponse: object

projectID:
object

return:
ID
arguments:
object

action:
object

return:
ActionPayload
arguments:
object

##### Example

    {
      "projectID": {
        "return": "object",
        "arguments": {}
      },
      "action": {
        "return": {
          "requestType": {
            "return": "string",
            "arguments": {}
          },
          "k8sManifest": {
            "return": "string",
            "arguments": {}
          },
          "namespace": {
            "return": "string",
            "arguments": {}
          },
          "externalData": {
            "return": "string",
            "arguments": {}
          },
          "username": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      }
    }

## ClusterEventResponse: object

eventID:
object

return:
ID
arguments:
object

eventType:
object

return:
String
arguments:
object

eventName:
object

return:
String
arguments:
object

description:
object

return:
String
arguments:
object

cluster:
object

return:
Cluster
arguments:
object

##### Example

    {
      "eventID": {
        "return": "object",
        "arguments": {}
      },
      "eventType": {
        "return": "string",
        "arguments": {}
      },
      "eventName": {
        "return": "string",
        "arguments": {}
      },
      "description": {
        "return": "string",
        "arguments": {}
      },
      "cluster": {
        "return": {
          "clusterID": {
            "return": "object",
            "arguments": {}
          },
          "projectID": {
            "return": "object",
            "arguments": {}
          },
          "clusterName": {
            "return": "string",
            "arguments": {}
          },
          "description": {
            "return": "string",
            "arguments": {}
          },
          "platformName": {
            "return": "string",
            "arguments": {}
          },
          "accessKey": {
            "return": "string",
            "arguments": {}
          },
          "isRegistered": {
            "return": "boolean",
            "arguments": {}
          },
          "isClusterConfirmed": {
            "return": "boolean",
            "arguments": {}
          },
          "isActive": {
            "return": "boolean",
            "arguments": {}
          },
          "updatedAt": {
            "return": "string",
            "arguments": {}
          },
          "createdAt": {
            "return": "string",
            "arguments": {}
          },
          "clusterType": {
            "return": "string",
            "arguments": {}
          },
          "noOfSchedules": {
            "return": "number",
            "arguments": {}
          },
          "noOfWorkflows": {
            "return": "number",
            "arguments": {}
          },
          "token": {
            "return": "string",
            "arguments": {}
          },
          "agentNamespace": {
            "return": "string",
            "arguments": {}
          },
          "serviceAccount": {
            "return": "string",
            "arguments": {}
          },
          "agentScope": {
            "return": "string",
            "arguments": {}
          },
          "agentNsExists": {
            "return": "boolean",
            "arguments": {}
          },
          "agentSaExists": {
            "return": "boolean",
            "arguments": {}
          }
        }
      }
    }

## ClusterIdentity: object

clusterID:
String
accessKey:
String
version:
String

##### Example

    {
      "clusterID": "string",
      "accessKey": "string",
      "version": "string"
    }

## ConfirmClusterRegistrationResponse: object

isClusterConfirmed:
object

return:
Boolean
arguments:
object

newAccessKey:
object

return:
String
arguments:
object

clusterID:
object

return:
String
arguments:
object

##### Example

    {
      "isClusterConfirmed": {
        "return": "boolean",
        "arguments": {}
      },
      "newAccessKey": {
        "return": "string",
        "arguments": {}
      },
      "clusterID": {
        "return": "string",
        "arguments": {}
      }
    }

## CreateChaosHubRequest: object

Defines the details required for creating a chaos hub

hubName:
String

  Name of the chaos hub

repoURL:
String

  URL of the git repository

repoBranch:
String

  Branch of the git repository

isPrivate:
Boolean

  Bool value indicating whether the hub is private or not.

authType:
AuthType

  Type of authentication used: BASIC, SSH, TOKEN

token:
String

  Token for authentication of private chaos hub

userName:
String

  Git username

password:
String

  Git password

sshPrivateKey:
String

  Private SSH key for authenticating into private chaos hub

sshPublicKey:
String

  Public SSH key for authenticating into private chaos hub

projectID:
String

  Project ID associated with this chaos hub

##### Example

    {
      "hubName": "string",
      "repoURL": "string",
      "repoBranch": "string",
      "isPrivate": "boolean",
      "authType": "string",
      "token": "string",
      "userName": "string",
      "password": "string",
      "sshPrivateKey": "string",
      "sshPublicKey": "string",
      "projectID": "string"
    }

## CreateDBInput: object

dsID:
String
dbName:
String
dbTypeName:
String
dbTypeID:
String
dbInformation:
String
chaosEventQueryTemplate:
String
chaosVerdictQueryTemplate:
String
applicationMetadataMap:
ApplicationMetadata
panelGroups:
PanelGroup
endTime:
String
startTime:
String
projectID:
ID
clusterID:
ID
refreshRate:
String

##### Example

    {
      "dsID": "string",
      "dbName": "string",
      "dbTypeName": "string",
      "dbTypeID": "string",
      "dbInformation": "string",
      "chaosEventQueryTemplate": "string",
      "chaosVerdictQueryTemplate": "string",
      "applicationMetadataMap": [
        {
          "namespace": "string",
          "applications": [
            {
              "kind": "string",
              "names": [
                "string"
              ]
            }
          ]
        }
      ],
      "panelGroups": [
        {
          "panels": [
            {
              "panelID": "string",
              "dbID": "string",
              "yAxisLeft": "string",
              "yAxisRight": "string",
              "xAxisDown": "string",
              "unit": "string",
              "panelGroupID": "string",
              "createdAt": "string",
              "promQueries": [
                {
                  "queryID": "string",
                  "promQueryName": "string",
                  "legend": "string",
                  "resolution": "string",
                  "minstep": "string",
                  "line": "boolean",
                  "closeArea": "boolean"
                }
              ],
              "panelOptions": {
                "points": "boolean",
                "grIDs": "boolean",
                "leftAxis": "boolean"
              },
              "panelName": "string"
            }
          ],
          "panelGroupName": "string"
        }
      ],
      "endTime": "string",
      "startTime": "string",
      "projectID": "object",
      "clusterID": "object",
      "refreshRate": "string"
    }

## DSInput: object

dsID:
String
dsName:
String
dsType:
String
dsURL:
String
accessType:
String
authType:
String
basicAuthUsername:
String
basicAuthPassword:
String
scrapeInterval:
Int
queryTimeout:
Int
httpMethod:
String
projectID:
String

##### Example

    {
      "dsID": "string",
      "dsName": "string",
      "dsType": "string",
      "dsURL": "string",
      "accessType": "string",
      "authType": "string",
      "basicAuthUsername": "string",
      "basicAuthPassword": "string",
      "scrapeInterval": "number",
      "queryTimeout": "number",
      "httpMethod": "string",
      "projectID": "string"
    }

## DSResponse: object

dsID:
object

return:
String
arguments:
object

dsName:
object

return:
String
arguments:
object

dsType:
object

return:
String
arguments:
object

dsURL:
object

return:
String
arguments:
object

accessType:
object

return:
String
arguments:
object

authType:
object

return:
String
arguments:
object

basicAuthUsername:
object

return:
String
arguments:
object

basicAuthPassword:
object

return:
String
arguments:
object

scrapeInterval:
object

return:
Int
arguments:
object

queryTimeout:
object

return:
Int
arguments:
object

httpMethod:
object

return:
String
arguments:
object

projectID:
object

return:
ID
arguments:
object

healthStatus:
object

return:
String
arguments:
object

createdAt:
object

return:
String
arguments:
object

updatedAt:
object

return:
String
arguments:
object

##### Example

    {
      "dsID": {
        "return": "string",
        "arguments": {}
      },
      "dsName": {
        "return": "string",
        "arguments": {}
      },
      "dsType": {
        "return": "string",
        "arguments": {}
      },
      "dsURL": {
        "return": "string",
        "arguments": {}
      },
      "accessType": {
        "return": "string",
        "arguments": {}
      },
      "authType": {
        "return": "string",
        "arguments": {}
      },
      "basicAuthUsername": {
        "return": "string",
        "arguments": {}
      },
      "basicAuthPassword": {
        "return": "string",
        "arguments": {}
      },
      "scrapeInterval": {
        "return": "number",
        "arguments": {}
      },
      "queryTimeout": {
        "return": "number",
        "arguments": {}
      },
      "httpMethod": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "object",
        "arguments": {}
      },
      "healthStatus": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "updatedAt": {
        "return": "string",
        "arguments": {}
      }
    }

## DashboardPromResponse: object

dashboardMetricsResponse:
object

return:
MetricDataForPanelGroup
arguments:
object

annotationsResponse:
object

return:
AnnotationsPromResponse
arguments:
object

##### Example

    {
      "dashboardMetricsResponse": {
        "return": [
          {
            "panelGroupID": {
              "return": "string",
              "arguments": {}
            },
            "panelGroupMetricsResponse": {
              "return": [
                {
                  "panelID": {
                    "return": "string",
                    "arguments": {}
                  },
                  "panelMetricsResponse": {
                    "return": [
                      {
                        "queryID": {
                          "return": "string",
                          "arguments": {}
                        },
                        "legends": {
                          "return": [
                            "string"
                          ],
                          "arguments": {}
                        },
                        "tsvs": {
                          "return": [
                            [
                              {
                                "date": {
                                  "return": "number",
                                  "arguments": {}
                                },
                                "value": {
                                  "return": "number",
                                  "arguments": {}
                                }
                              }
                            ]
                          ],
                          "arguments": {}
                        }
                      }
                    ],
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "annotationsResponse": {
        "return": [
          {
            "queryID": {
              "return": "string",
              "arguments": {}
            },
            "legends": {
              "return": [
                "string"
              ],
              "arguments": {}
            },
            "tsvs": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "number",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            },
            "subDataArray": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "string",
                      "arguments": {}
                    },
                    "subDataName": {
                      "return": "string",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## DataVars: object

url:
String
start:
String
end:
String
relativeTime:
Int
refreshInterval:
Int

##### Example

    {
      "url": "string",
      "start": "string",
      "end": "string",
      "relativeTime": "number",
      "refreshInterval": "number"
    }

## DateRange: object

Defines the start date and end date for the filtering the data

startDate:
String

  Start date

endDate:
String

  End date

##### Example

    {
      "startDate": "string",
      "endDate": "string"
    }

## DeleteDSInput: object

forceDelete:
Boolean
dsID:
ID

##### Example

    {
      "forceDelete": "boolean",
      "dsID": "object"
    }

## DsDetails: object

url:
String
start:
String
end:
String

##### Example

    {
      "url": "string",
      "start": "string",
      "end": "string"
    }

## ExperimentRequest: object

projectID:
String

  ID of the project

chartName:
String

  Name of the chart being used

experimentName:
String

  Name of the experiment

hubName:
String

  Name of the hub

fileType:
String

  Type of thr file for workflow: chaosEngine/ experimentInput

##### Example

    {
      "projectID": "string",
      "chartName": "string",
      "experimentName": "string",
      "hubName": "string",
      "fileType": "string"
    }

## Experiments: object

name:
object

return:
String
arguments:
object

CSV:
object

return:
String
arguments:
object

desc:
object

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      },
      "CSV": {
        "return": "string",
        "arguments": {}
      },
      "desc": {
        "return": "string",
        "arguments": {}
      }
    }

## FileType: string

object
EXPERIMENT
object
ENGINE
object
WORKFLOW
object
CSV

## Float: number

The `Float` scalar type represents signed double-precision fractional values as specified by IEEE 754.

##### Example

    number

## GitConfig: object

Details of setting a Git repository

projectID:
String

  ID of the project where GitOps is configured

branch:
String

  Git branch where the chaos charts will be pushed and synced

repoURL:
String

  URL of the Git repository

authType:
AuthType

  Type of authentication used: BASIC, SSH, TOKEN

token:
String

  Token used for private repository

userName:
String

  Git username

password:
String

  Git password

sshPrivateKey:
String

  Private SSH key authenticating into git repository

##### Example

    {
      "projectID": "string",
      "branch": "string",
      "repoURL": "string",
      "authType": "string",
      "token": "string",
      "userName": "string",
      "password": "string",
      "sshPrivateKey": "string"
    }

## GitConfigResponse: object

Response received after configuring GitOps

enabled:
object

  Bool value indicating whether GitOps is enabled or not

return:
Boolean
arguments:
object

projectID:
object

  ID of the project where GitOps is configured

return:
String
arguments:
object

branch:
object

  Git branch where the chaos charts will be pushed and synced

return:
String
arguments:
object

repoURL:
object

  URL of the Git repository

return:
String
arguments:
object

authType:
object

  Type of authentication used: BASIC, SSH, TOKEN

return:
AuthType
arguments:
object

token:
object

  Token used for private repository

return:
String
arguments:
object

userName:
object

  Git username

return:
String
arguments:
object

password:
object

  Git password

return:
String
arguments:
object

sshPrivateKey:
object

  Private SSH key authenticating into git repository

return:
String
arguments:
object

##### Example

    {
      "enabled": {
        "return": "boolean",
        "arguments": {}
      },
      "projectID": {
        "return": "string",
        "arguments": {}
      },
      "branch": {
        "return": "string",
        "arguments": {}
      },
      "repoURL": {
        "return": "string",
        "arguments": {}
      },
      "authType": {
        "return": "string",
        "arguments": {}
      },
      "token": {
        "return": "string",
        "arguments": {}
      },
      "userName": {
        "return": "string",
        "arguments": {}
      },
      "password": {
        "return": "string",
        "arguments": {}
      },
      "sshPrivateKey": {
        "return": "string",
        "arguments": {}
      }
    }

## HeatmapDataResponse: object

bins:
object

return:
WorkflowRunsData
arguments:
object

##### Example

    {
      "bins": {
        "return": [
          {
            "value": {
              "return": "number",
              "arguments": {}
            },
            "workflowRunDetail": {
              "return": {
                "noOfRuns": {
                  "return": "number",
                  "arguments": {}
                },
                "dateStamp": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## ID: object

The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.

##### Example

    object

## ImageRegistry: object

Defines details for image registry

isDefault:
object

  Bool value indicating if the image registry is default or not; by default workflow uses LitmusChaos registry

return:
Boolean
arguments:
object

imageRegistryName:
object

  Name of Image Registry

return:
String
arguments:
object

imageRepoName:
object

  Name of image repository

return:
String
arguments:
object

imageRegistryType:
object

  Type of the image registry: public/private

return:
String
arguments:
object

secretName:
object

  Secret which is used for private registry

return:
String
arguments:
object

secretNamespace:
object

  Namespace where the secret is available

return:
String
arguments:
object

enableRegistry:
object

  Bool value indicating if image registry is enabled or not

return:
Boolean
arguments:
object

##### Example

    {
      "isDefault": {
        "return": "boolean",
        "arguments": {}
      },
      "imageRegistryName": {
        "return": "string",
        "arguments": {}
      },
      "imageRepoName": {
        "return": "string",
        "arguments": {}
      },
      "imageRegistryType": {
        "return": "string",
        "arguments": {}
      },
      "secretName": {
        "return": "string",
        "arguments": {}
      },
      "secretNamespace": {
        "return": "string",
        "arguments": {}
      },
      "enableRegistry": {
        "return": "boolean",
        "arguments": {}
      }
    }

## ImageRegistryInput: object

Defines input data for querying the details of an image registry

isDefault:
Boolean

  Bool value indicating if the image registry is default or not; by default workflow uses LitmusChaos registry

imageRegistryName:
String

  Name of Image Registry

imageRepoName:
String

  Name of image repository

imageRegistryType:
String

  Type of the image registry: public/private

secretName:
String

  Secret which is used for private registry

secretNamespace:
String

  Namespace where the secret is available

enableRegistry:
Boolean

  Bool value indicating if image registry is enabled or not

##### Example

    {
      "isDefault": "boolean",
      "imageRegistryName": "string",
      "imageRepoName": "string",
      "imageRegistryType": "string",
      "secretName": "string",
      "secretNamespace": "string",
      "enableRegistry": "boolean"
    }

## ImageRegistryResponse: object

Defines response data for image registry

isDefault:
object

  Bool value indicating if the image registry is default or not; by default workflow uses LitmusChaos registry

return:
Boolean
arguments:
object

imageRegistryInfo:
object

  Information Image Registry

return:
ImageRegistry
arguments:
object

imageRegistryID:
object

  ID of the image registry

return:
String
arguments:
object

projectID:
object

  ID of the project in which image registry is created

return:
String
arguments:
object

updatedAt:
object

  Timestamp when the image registry was last updated

return:
String
arguments:
object

createdAt:
object

  Timestamp when the image registry was created

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating if the image registry has been removed

return:
Boolean
arguments:
object

##### Example

    {
      "isDefault": {
        "return": "boolean",
        "arguments": {}
      },
      "imageRegistryInfo": {
        "return": {
          "isDefault": {
            "return": "boolean",
            "arguments": {}
          },
          "imageRegistryName": {
            "return": "string",
            "arguments": {}
          },
          "imageRepoName": {
            "return": "string",
            "arguments": {}
          },
          "imageRegistryType": {
            "return": "string",
            "arguments": {}
          },
          "secretName": {
            "return": "string",
            "arguments": {}
          },
          "secretNamespace": {
            "return": "string",
            "arguments": {}
          },
          "enableRegistry": {
            "return": "boolean",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "imageRegistryID": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "string",
        "arguments": {}
      },
      "updatedAt": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      }
    }

## Int: number

The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

##### Example

    number

## Invitation: string

object
Accepted
object
Pending

## KubeGVRRequest: object

group:
String
version:
String
resource:
String

##### Example

    {
      "group": "string",
      "version": "string",
      "resource": "string"
    }

## KubeObjectData: object

Defines the details of Kubernetes object

requestID:
ID

  Unique request ID for fetching Kubernetes object details

clusterID:
ClusterIdentity

  ID of the cluster in which the Kubernetes object is present

kubeObj:
String

  Type of the Kubernetes object

##### Example

    {
      "requestID": "object",
      "clusterID": {
        "clusterID": "string",
        "accessKey": "string",
        "version": "string"
      },
      "kubeObj": "string"
    }

## KubeObjectRequest: object

Defines details for fetching Kubernetes object data

clusterID:
ID

  ID of the cluster in which the Kubernetes object is present

objectType:
String

  Type of the Kubernetes object to be fetched

kubeObjRequest:
KubeGVRRequest

##### Example

    {
      "clusterID": "object",
      "objectType": "string",
      "kubeObjRequest": {
        "group": "string",
        "version": "string",
        "resource": "string"
      }
    }

## KubeObjectResponse: object

Response received for querying Kubernetes Object

clusterID:
object

  ID of the cluster in which the Kubernetes object is present

return:
ID
arguments:
object

kubeObj:
object

  Type of the Kubernetes object

return:
String
arguments:
object

##### Example

    {
      "clusterID": {
        "return": "object",
        "arguments": {}
      },
      "kubeObj": {
        "return": "string",
        "arguments": {}
      }
    }

## LabelValue: object

label:
object

return:
String
arguments:
object

values:
object

return:
Option
arguments:
object

##### Example

    {
      "label": {
        "return": "string",
        "arguments": {}
      },
      "values": {
        "return": [
          {
            "name": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## Link: object

name:
object

return:
String
arguments:
object

url:
object

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      },
      "url": {
        "return": "string",
        "arguments": {}
      }
    }

## ListDashboardResponse: object

dsID:
object

return:
String
arguments:
object

dbID:
object

return:
String
arguments:
object

dbName:
object

return:
String
arguments:
object

dbTypeID:
object

return:
String
arguments:
object

dbTypeName:
object

return:
String
arguments:
object

dbInformation:
object

return:
String
arguments:
object

chaosEventQueryTemplate:
object

return:
String
arguments:
object

chaosVerdictQueryTemplate:
object

return:
String
arguments:
object

applicationMetadataMap:
object

return:
ApplicationMetadataResponse
arguments:
object

clusterName:
object

return:
String
arguments:
object

dsName:
object

return:
String
arguments:
object

dsType:
object

return:
String
arguments:
object

dsURL:
object

return:
String
arguments:
object

dsHealthStatus:
object

return:
String
arguments:
object

panelGroups:
object

return:
PanelGroupResponse
arguments:
object

endTime:
object

return:
String
arguments:
object

startTime:
object

return:
String
arguments:
object

refreshRate:
object

return:
String
arguments:
object

projectID:
object

return:
ID
arguments:
object

clusterID:
object

return:
ID
arguments:
object

createdAt:
object

return:
String
arguments:
object

updatedAt:
object

return:
String
arguments:
object

viewedAt:
object

return:
String
arguments:
object

##### Example

    {
      "dsID": {
        "return": "string",
        "arguments": {}
      },
      "dbID": {
        "return": "string",
        "arguments": {}
      },
      "dbName": {
        "return": "string",
        "arguments": {}
      },
      "dbTypeID": {
        "return": "string",
        "arguments": {}
      },
      "dbTypeName": {
        "return": "string",
        "arguments": {}
      },
      "dbInformation": {
        "return": "string",
        "arguments": {}
      },
      "chaosEventQueryTemplate": {
        "return": "string",
        "arguments": {}
      },
      "chaosVerdictQueryTemplate": {
        "return": "string",
        "arguments": {}
      },
      "applicationMetadataMap": {
        "return": [
          {
            "namespace": {
              "return": "string",
              "arguments": {}
            },
            "applications": {
              "return": [
                {
                  "kind": {
                    "return": "string",
                    "arguments": {}
                  },
                  "names": {
                    "return": [
                      "string"
                    ],
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "clusterName": {
        "return": "string",
        "arguments": {}
      },
      "dsName": {
        "return": "string",
        "arguments": {}
      },
      "dsType": {
        "return": "string",
        "arguments": {}
      },
      "dsURL": {
        "return": "string",
        "arguments": {}
      },
      "dsHealthStatus": {
        "return": "string",
        "arguments": {}
      },
      "panelGroups": {
        "return": [
          {
            "panels": {
              "return": [
                {
                  "panelID": {
                    "return": "string",
                    "arguments": {}
                  },
                  "yAxisLeft": {
                    "return": "string",
                    "arguments": {}
                  },
                  "yAxisRight": {
                    "return": "string",
                    "arguments": {}
                  },
                  "xAxisDown": {
                    "return": "string",
                    "arguments": {}
                  }
                }
              ]
            }
          }
        ]
      }
    }

## ListWorkflowRunsRequest: object

Defines the details for workflow runs

projectID:
ID

  ID of the project

workflowRunIDs:
ID

  Array of workflow run IDs for which details will be fetched

workflowIDs:
ID

  Array of workflow IDs for which details will be fetched

pagination:
Pagination

  Details for fetching paginated data

sort:
WorkflowRunSortInput

  Details for fetching sorted data

filter:
WorkflowRunFilterInput

  Details for fetching filtered data

##### Example

    {
      "projectID": "object",
      "workflowRunIDs": [
        "object"
      ],
      "workflowIDs": [
        "object"
      ],
      "pagination": {
        "page": "number",
        "limit": "number"
      },
      "sort": {
        "field": "string",
        "descending": "boolean"
      },
      "filter": {
        "workflowName": "string",
        "clusterName": "string",
        "workflowStatus": "string",
        "dateRange": {
          "startDate": "string",
          "endDate": "string"
        }
      }
    }

## ListWorkflowRunsResponse: object

Defines the details of a workflow to sent as response

totalNoOfWorkflowRuns:
object

  Total number of workflow runs

return:
Int
arguments:
object

workflowRuns:
object

  Defines details of workflow runs

return:
WorkflowRun
arguments:
object

##### Example

    {
      "totalNoOfWorkflowRuns": {
        "return": "number",
        "arguments": {}
      },
      "workflowRuns": {
        "return": [
          {
            "workflowRunID": {
              "return": "object",
              "arguments": {}
            },
            "workflowID": {
              "return": "object",
              "arguments": {}
            },
            "clusterName": {
              "return": "string",
              "arguments": {}
            },
            "weightages": {
              "return": [
                {
                  "experimentName": {
                    "return": "string",
                    "arguments": {}
                  },
                  "weightage": {
                    "return": "number",
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            },
            "lastUpdated": {
              "return": "string",
              "arguments": {}
            },
            "projectID": {
              "return": "object",
              "arguments": {}
            },
            "clusterID": {
              "return": "object",
              "arguments": {}
            },
            "workflowName": {
              "return": "string",
              "arguments": {}
            },
            "clusterType": {
              "return": "string",
              "arguments": {}
            },
            "phase": {
              "return": "string",
              "arguments": {}
            },
            "resiliencyScore": {
              "return": "number",
              "arguments": {}
            },
            "experimentsPassed": {
              "return": "number",
              "arguments": {}
            },
            "experimentsFailed": {
              "return": "number",
              "arguments": {}
            },
            "experimentsAwaited": {
              "return": "number",
              "arguments": {}
            },
            "experimentsStopped": {
              "return": "number",
              "arguments": {}
            },
            "experimentsNa": {
              "return": "number",
              "arguments": {}
            },
            "totalExperiments": {
              "return": "number",
              "arguments": {}
            },
            "executionData": {
              "return": "string",
              "arguments": {}
            },
            "isRemoved": {
              "return": "boolean",
              "arguments": {}
            },
            "executedBy": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## ListWorkflowsRequest: object

Defines the details for a workflow

projectID:
ID

  ID of the project

workflowIDs:
ID

  Array of workflow IDs for which details will be fetched

pagination:
Pagination

  Details for fetching paginated data

sort:
WorkflowSortInput

  Details for fetching sorted data

filter:
WorkflowFilterInput

  Details for fetching filtered data

##### Example

    {
      "projectID": "object",
      "workflowIDs": [
        "object"
      ],
      "pagination": {
        "page": "number",
        "limit": "number"
      },
      "sort": {
        "field": "string",
        "descending": "boolean"
      },
      "filter": {
        "workflowName": "string",
        "clusterName": "string"
      }
    }

## ListWorkflowsResponse: object

Defines the details for a workflow with total workflow count

totalNoOfWorkflows:
object

  Total number of workflows

return:
Int
arguments:
object

workflows:
object

  Details related to the workflows

return:
Workflow
arguments:
object

##### Example

    {
      "totalNoOfWorkflows": {
        "return": "number",
        "arguments": {}
      },
      "workflows": {
        "return": [
          {
            "workflowID": {
              "return": "string",
              "arguments": {}
            },
            "workflowManifest": {
              "return": "string",
              "arguments": {}
            },
            "cronSyntax": {
              "return": "string",
              "arguments": {}
            },
            "clusterName": {
              "return": "string",
              "arguments": {}
            },
            "workflowName": {
              "return": "string",
              "arguments": {}
            },
            "workflowDescription": {
              "return": "string",
              "arguments": {}
            },
            "weightages": {
              "return": [
                {
                  "experimentName": {
                    "return": "string",
                    "arguments": {}
                  },
                  "weightage": {
                    "return": "number",
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            },
            "isCustomWorkflow": {
              "return": "boolean",
              "arguments": {}
            },
            "updatedAt": {
              "return": "string",
              "arguments": {}
            },
            "createdAt": {
              "return": "string",
              "arguments": {}
            },
            "projectID": {
              "return": "object",
              "arguments": {}
            },
            "clusterID": {
              "return": "object",
              "arguments": {}
            },
            "clusterType": {
              "return": "string",
              "arguments": {}
            },
            "isRemoved": {
              "return": "boolean",
              "arguments": {}
            },
            "lastUpdatedBy": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## Maintainer: object

Defines the details of the maintainer

name:
object

  Name of the maintainer

return:
String
arguments:
object

email:
object

  Email of the maintainer

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      },
      "email": {
        "return": "string",
        "arguments": {}
      }
    }

## MemberRole: string

object
Owner
object
Editor
object
Viewer

## Metadata: object

name:
object

return:
String
arguments:
object

version:
object

return:
String
arguments:
object

annotations:
object

return:
Annotation
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      },
      "version": {
        "return": "string",
        "arguments": {}
      },
      "annotations": {
        "return": {
          "categories": {
            "return": "string",
            "arguments": {}
          },
          "vendor": {
            "return": "string",
            "arguments": {}
          },
          "createdAt": {
            "return": "string",
            "arguments": {}
          },
          "repository": {
            "return": "string",
            "arguments": {}
          },
          "support": {
            "return": "string",
            "arguments": {}
          },
          "chartDescription": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      }
    }

## MetricDataForPanel: object

panelID:
object

return:
String
arguments:
object

panelMetricsResponse:
object

return:
MetricsPromResponse
arguments:
object

##### Example

    {
      "panelID": {
        "return": "string",
        "arguments": {}
      },
      "panelMetricsResponse": {
        "return": [
          {
            "queryID": {
              "return": "string",
              "arguments": {}
            },
            "legends": {
              "return": [
                "string"
              ],
              "arguments": {}
            },
            "tsvs": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "number",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## MetricDataForPanelGroup: object

panelGroupID:
object

return:
String
arguments:
object

panelGroupMetricsResponse:
object

return:
MetricDataForPanel
arguments:
object

##### Example

    {
      "panelGroupID": {
        "return": "string",
        "arguments": {}
      },
      "panelGroupMetricsResponse": {
        "return": [
          {
            "panelID": {
              "return": "string",
              "arguments": {}
            },
            "panelMetricsResponse": {
              "return": [
                {
                  "queryID": {
                    "return": "string",
                    "arguments": {}
                  },
                  "legends": {
                    "return": [
                      "string"
                    ],
                    "arguments": {}
                  },
                  "tsvs": {
                    "return": [
                      [
                        {
                          "date": {
                            "return": "number",
                            "arguments": {}
                          },
                          "value": {
                            "return": "number",
                            "arguments": {}
                          }
                        }
                      ]
                    ],
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## MetricsPromResponse: object

queryID:
object

return:
String
arguments:
object

legends:
object

return:
String
arguments:
object

tsvs:
object

return:
object[][]
arguments:
object

##### Example

    {
      "queryID": {
        "return": "string",
        "arguments": {}
      },
      "legends": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "tsvs": {
        "return": [
          [
            {
              "date": {
                "return": "number",
                "arguments": {}
              },
              "value": {
                "return": "number",
                "arguments": {}
              }
            }
          ]
        ],
        "arguments": {}
      }
    }

## MetricsTimeStampValue: object

date:
object

return:
Float
arguments:
object

value:
object

return:
Float
arguments:
object

##### Example

    {
      "date": {
        "return": "number",
        "arguments": {}
      },
      "value": {
        "return": "number",
        "arguments": {}
      }
    }

## NewClusterEventRequest: object

eventName:
String
description:
String
clusterID:
String
accessKey:
String

##### Example

    {
      "eventName": "string",
      "description": "string",
      "clusterID": "string",
      "accessKey": "string"
    }

## Option: object

name:
object

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      }
    }

## PackageInformation: object

packageName:
object

return:
String
arguments:
object

experiments:
object

return:
Experiments
arguments:
object

##### Example

    {
      "packageName": {
        "return": "string",
        "arguments": {}
      },
      "experiments": {
        "return": [
          {
            "name": {
              "return": "string",
              "arguments": {}
            },
            "CSV": {
              "return": "string",
              "arguments": {}
            },
            "desc": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## Pagination: object

Defines data required to fetch paginated data

page:
Int

  Page number for which data will be fetched

limit:
Int

  Number of data to be fetched

##### Example

    {
      "page": "number",
      "limit": "number"
    }

## Panel: object

panelID:
String
dbID:
String
yAxisLeft:
String
yAxisRight:
String
xAxisDown:
String
unit:
String
panelGroupID:
String
createdAt:
String
promQueries:
PromQuery
panelOptions:
PanelOption
panelName:
String

##### Example

    {
      "panelID": "string",
      "dbID": "string",
      "yAxisLeft": "string",
      "yAxisRight": "string",
      "xAxisDown": "string",
      "unit": "string",
      "panelGroupID": "string",
      "createdAt": "string",
      "promQueries": [
        {
          "queryID": "string",
          "promQueryName": "string",
          "legend": "string",
          "resolution": "string",
          "minstep": "string",
          "line": "boolean",
          "closeArea": "boolean"
        }
      ],
      "panelOptions": {
        "points": "boolean",
        "grIDs": "boolean",
        "leftAxis": "boolean"
      },
      "panelName": "string"
    }

## PanelGroup: object

panels:
Panel
panelGroupName:
String

##### Example

    {
      "panels": [
        {
          "panelID": "string",
          "dbID": "string",
          "yAxisLeft": "string",
          "yAxisRight": "string",
          "xAxisDown": "string",
          "unit": "string",
          "panelGroupID": "string",
          "createdAt": "string",
          "promQueries": [
            {
              "queryID": "string",
              "promQueryName": "string",
              "legend": "string",
              "resolution": "string",
              "minstep": "string",
              "line": "boolean",
              "closeArea": "boolean"
            }
          ],
          "panelOptions": {
            "points": "boolean",
            "grIDs": "boolean",
            "leftAxis": "boolean"
          },
          "panelName": "string"
        }
      ],
      "panelGroupName": "string"
    }

## PanelGroupResponse: object

panels:
object

return:
PanelResponse
arguments:
object

panelGroupName:
object

return:
String
arguments:
object

panelGroupID:
object

return:
String
arguments:
object

##### Example

    {
      "panels": {
        "return": [
          {
            "panelID": {
              "return": "string",
              "arguments": {}
            },
            "yAxisLeft": {
              "return": "string",
              "arguments": {}
            },
            "yAxisRight": {
              "return": "string",
              "arguments": {}
            },
            "xAxisDown": {
              "return": "string",
              "arguments": {}
            },
            "unit": {
              "return": "string",
              "arguments": {}
            },
            "promQueries": {
              "return": [
                {
                  "queryID": {
                    "return": "object",
                    "arguments": {}
                  },
                  "promQueryName": {
                    "return": "string",
                    "arguments": {}
                  },
                  "legend": {
                    "return": "string",
                    "arguments": {}
                  },
                  "resolution": {
                    "return": "string",
                    "arguments": {}
                  },
                  "minstep": {
                    "return": "string",
                    "arguments": {}
                  },
                  "line": {
                    "return": "boolean",
                    "arguments": {}
                  },
                  "closeArea": {
                    "return": "boolean",
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            },
            "panelOptions": {
              "return": {
                "points": {
                  "return": "boolean",
                  "arguments": {}
                },
                "grIDs": {
                  "return": "boolean",
                  "arguments": {}
                },
                "leftAxis": {
                  "return": "boolean",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "panelName": {
              "return": "string",
              "arguments": {}
            },
            "createdAt": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "panelGroupName": {
        "return": "string",
        "arguments": {}
      },
      "panelGroupID": {
        "return": "string",
        "arguments": {}
      }
    }

## PanelOption: object

points:
Boolean
grIDs:
Boolean
leftAxis:
Boolean

##### Example

    {
      "points": "boolean",
      "grIDs": "boolean",
      "leftAxis": "boolean"
    }

## PanelOptionResponse: object

points:
object

return:
Boolean
arguments:
object

grIDs:
object

return:
Boolean
arguments:
object

leftAxis:
object

return:
Boolean
arguments:
object

##### Example

    {
      "points": {
        "return": "boolean",
        "arguments": {}
      },
      "grIDs": {
        "return": "boolean",
        "arguments": {}
      },
      "leftAxis": {
        "return": "boolean",
        "arguments": {}
      }
    }

## PanelResponse: object

panelID:
object

return:
String
arguments:
object

yAxisLeft:
object

return:
String
arguments:
object

yAxisRight:
object

return:
String
arguments:
object

xAxisDown:
object

return:
String
arguments:
object

unit:
object

return:
String
arguments:
object

promQueries:
object

return:
PromQueryResponse
arguments:
object

panelOptions:
object

return:
PanelOptionResponse
arguments:
object

panelName:
object

return:
String
arguments:
object

createdAt:
object

return:
String
arguments:
object

##### Example

    {
      "panelID": {
        "return": "string",
        "arguments": {}
      },
      "yAxisLeft": {
        "return": "string",
        "arguments": {}
      },
      "yAxisRight": {
        "return": "string",
        "arguments": {}
      },
      "xAxisDown": {
        "return": "string",
        "arguments": {}
      },
      "unit": {
        "return": "string",
        "arguments": {}
      },
      "promQueries": {
        "return": [
          {
            "queryID": {
              "return": "object",
              "arguments": {}
            },
            "promQueryName": {
              "return": "string",
              "arguments": {}
            },
            "legend": {
              "return": "string",
              "arguments": {}
            },
            "resolution": {
              "return": "string",
              "arguments": {}
            },
            "minstep": {
              "return": "string",
              "arguments": {}
            },
            "line": {
              "return": "boolean",
              "arguments": {}
            },
            "closeArea": {
              "return": "boolean",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "panelOptions": {
        "return": {
          "points": {
            "return": "boolean",
            "arguments": {}
          },
          "grIDs": {
            "return": "boolean",
            "arguments": {}
          },
          "leftAxis": {
            "return": "boolean",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "panelName": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      }
    }

## PodLog: object

Response received for querying pod logs

clusterID:
ClusterIdentity

  ID of the cluster

requestID:
ID

  Unique request ID of a particular node which is being queried

workflowRunID:
ID

  ID of a workflow run

podName:
String

  Name of the pod for which logs are required

podType:
String

  Type of the pod: chaosengine

log:
String

  Logs for the pod

##### Example

    {
      "clusterID": {
        "clusterID": "string",
        "accessKey": "string",
        "version": "string"
      },
      "requestID": "object",
      "workflowRunID": "object",
      "podName": "string",
      "podType": "string",
      "log": "string"
    }

## PodLogRequest: object

Defines the details for fetching the pod logs

clusterID:
ID

  ID of the cluster

workflowRunID:
ID

  ID of a workflow run

podName:
String

  Name of the pod for which logs are required

podNamespace:
String

  Namespace where the pod is running

podType:
String

  Type of the pod: chaosEngine or not pod

expPod:
String

  Name of the experiment pod fetched from execution data

runnerPod:
String

  Name of the runner pod fetched from execution data

chaosNamespace:
String

  Namespace where the experiment is executing

##### Example

    {
      "clusterID": "object",
      "workflowRunID": "object",
      "podName": "string",
      "podNamespace": "string",
      "podType": "string",
      "expPod": "string",
      "runnerPod": "string",
      "chaosNamespace": "string"
    }

## PodLogResponse: object

Defines the response received for querying querying the pod logs

workflowRunID:
object

  ID of the workflow run which is to be queried

return:
ID
arguments:
object

podName:
object

  Name of the pod for which logs are queried

return:
String
arguments:
object

podType:
object

  Type of the pod: chaosengine

return:
String
arguments:
object

log:
object

  Logs for the pod

return:
String
arguments:
object

##### Example

    {
      "workflowRunID": {
        "return": "object",
        "arguments": {}
      },
      "podName": {
        "return": "string",
        "arguments": {}
      },
      "podType": {
        "return": "string",
        "arguments": {}
      },
      "log": {
        "return": "string",
        "arguments": {}
      }
    }

## PortalDashboardDataResponse: object

name:
object

return:
String
arguments:
object

dashboardData:
object

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      },
      "dashboardData": {
        "return": "string",
        "arguments": {}
      }
    }

## ProjectData: object

Defines all the stats under a project

workflows:
object

  Workflow related statistics

return:
WorkflowStat
arguments:
object

agents:
object

  Agent related statistics

return:
AgentStat
arguments:
object

projectID:
object

  ID of the project

return:
String
arguments:
object

##### Example

    {
      "workflows": {
        "return": {
          "schedules": {
            "return": "number",
            "arguments": {}
          },
          "runs": {
            "return": "number",
            "arguments": {}
          },
          "expRuns": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "agents": {
        "return": {
          "ns": {
            "return": "number",
            "arguments": {}
          },
          "cluster": {
            "return": "number",
            "arguments": {}
          },
          "total": {
            "return": "number",
            "arguments": {}
          },
          "active": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "projectID": {
        "return": "string",
        "arguments": {}
      }
    }

## PromQuery: object

queryID:
String
promQueryName:
String
legend:
String
resolution:
String
minstep:
String
line:
Boolean
closeArea:
Boolean

##### Example

    {
      "queryID": "string",
      "promQueryName": "string",
      "legend": "string",
      "resolution": "string",
      "minstep": "string",
      "line": "boolean",
      "closeArea": "boolean"
    }

## PromQueryInput: object

queryID:
String
query:
String
legend:
String
resolution:
String
minstep:
Int

##### Example

    {
      "queryID": "string",
      "query": "string",
      "legend": "string",
      "resolution": "string",
      "minstep": "number"
    }

## PromQueryResponse: object

queryID:
object

return:
ID
arguments:
object

promQueryName:
object

return:
String
arguments:
object

legend:
object

return:
String
arguments:
object

resolution:
object

return:
String
arguments:
object

minstep:
object

return:
String
arguments:
object

line:
object

return:
Boolean
arguments:
object

closeArea:
object

return:
Boolean
arguments:
object

##### Example

    {
      "queryID": {
        "return": "object",
        "arguments": {}
      },
      "promQueryName": {
        "return": "string",
        "arguments": {}
      },
      "legend": {
        "return": "string",
        "arguments": {}
      },
      "resolution": {
        "return": "string",
        "arguments": {}
      },
      "minstep": {
        "return": "string",
        "arguments": {}
      },
      "line": {
        "return": "boolean",
        "arguments": {}
      },
      "closeArea": {
        "return": "boolean",
        "arguments": {}
      }
    }

## PromSeriesInput: object

series:
String
dsDetails:
DsDetails

##### Example

    {
      "series": "string",
      "dsDetails": {
        "url": "string",
        "start": "string",
        "end": "string"
      }
    }

## PromSeriesListResponse: object

seriesList:
object

return:
String
arguments:
object

##### Example

    {
      "seriesList": {
        "return": [
          "string"
        ],
        "arguments": {}
      }
    }

## PromSeriesResponse: object

series:
object

return:
String
arguments:
object

labelValues:
object

return:
LabelValue
arguments:
object

##### Example

    {
      "series": {
        "return": "string",
        "arguments": {}
      },
      "labelValues": {
        "return": [
          {
            "label": {
              "return": "string",
              "arguments": {}
            },
            "values": {
              "return": [
                {
                  "name": {
                    "return": "string",
                    "arguments": {}
                  }
                }
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## PrometheusDataRequest: object

queries:
PromQueryInput
dsDetails:
DsDetails

##### Example

    {
      "queries": [
        {
          "queryID": "string",
          "query": "string",
          "legend": "string",
          "resolution": "string",
          "minstep": "number"
        }
      ],
      "dsDetails": {
        "url": "string",
        "start": "string",
        "end": "string"
      }
    }

## PrometheusDataResponse: object

metricsResponse:
object

return:
MetricsPromResponse
arguments:
object

annotationsResponse:
object

return:
AnnotationsPromResponse
arguments:
object

##### Example

    {
      "metricsResponse": {
        "return": [
          {
            "queryID": {
              "return": "string",
              "arguments": {}
            },
            "legends": {
              "return": [
                "string"
              ],
              "arguments": {}
            },
            "tsvs": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "number",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "annotationsResponse": {
        "return": [
          {
            "queryID": {
              "return": "string",
              "arguments": {}
            },
            "legends": {
              "return": [
                "string"
              ],
              "arguments": {}
            },
            "tsvs": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "number",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            },
            "subDataArray": {
              "return": [
                [
                  {
                    "date": {
                      "return": "number",
                      "arguments": {}
                    },
                    "value": {
                      "return": "string",
                      "arguments": {}
                    },
                    "subDataName": {
                      "return": "string",
                      "arguments": {}
                    }
                  }
                ]
              ],
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      }
    }

## Provider: object

name:
object

return:
String
arguments:
object

##### Example

    {
      "name": {
        "return": "string",
        "arguments": {}
      }
    }

## QueryMapForPanel: object

panelID:
String
queryIDs:
String

##### Example

    {
      "panelID": "string",
      "queryIDs": [
        "string"
      ]
    }

## QueryMapForPanelGroup: object

panelGroupID:
String
panelQueryMap:
QueryMapForPanel

##### Example

    {
      "panelGroupID": "string",
      "panelQueryMap": [
        {
          "panelID": "string",
          "queryIDs": [
            "string"
          ]
        }
      ]
    }

## RegisterClusterRequest: object

Defines the details for the new cluster being connected

clusterName:
String

  Name of the cluster

description:
String

  Description of the cluster

platformName:
String

  Cluster Platform Name eg. GKE,AWS, Others

projectID:
ID

  Project ID the cluster is being connected to

clusterType:
String

  Cluster type : Internal or External

agentNamespace:
String

  Namespace where the cluster agent is being installed

serviceAccount:
String

  Name of service account used by cluster agent

agentScope:
String

  Scope of the cluster agent : ns or cluster

agentNsExists:
Boolean

  Bool value indicating whether agent ns used already exists on cluster or not

agentSaExists:
Boolean

  Bool value indicating whether service account used already exists on cluster or not

skipSsl:
Boolean

  Bool value indicating whether agent will skip ssl checks or not

nodeSelector:
String

  Node selectors used by cluster agent

tolerations:
Toleration

  Node tolerations used by cluster agent

##### Example

    {
      "clusterName": "string",
      "description": "string",
      "platformName": "string",
      "projectID": "object",
      "clusterType": "string",
      "agentNamespace": "string",
      "serviceAccount": "string",
      "agentScope": "string",
      "agentNsExists": "boolean",
      "agentSaExists": "boolean",
      "skipSsl": "boolean",
      "nodeSelector": "string",
      "tolerations": [
        {
          "tolerationSeconds": "number",
          "key": "string",
          "operator": "string",
          "effect": "string",
          "value": "string"
        }
      ]
    }

## RegisterClusterResponse: object

Response received for registering a new cluster

token:
object

  Token used to verify and retrieve the cluster agent manifest

return:
String
arguments:
object

clusterID:
object

  Unique ID for the newly registered cluster

return:
String
arguments:
object

clusterName:
object

  Cluster name as sent in request

return:
String
arguments:
object

##### Example

    {
      "token": {
        "return": "string",
        "arguments": {}
      },
      "clusterID": {
        "return": "string",
        "arguments": {}
      },
      "clusterName": {
        "return": "string",
        "arguments": {}
      }
    }

## Resource: object

kind:
String
names:
String

##### Example

    {
      "kind": "string",
      "names": [
        "string"
      ]
    }

## ResourceResponse: object

kind:
object

return:
String
arguments:
object

names:
object

return:
String
arguments:
object

##### Example

    {
      "kind": {
        "return": "string",
        "arguments": {}
      },
      "names": {
        "return": [
          "string"
        ],
        "arguments": {}
      }
    }

## SSHKey: object

Defines the SSHKey details

publicKey:
object

  Public SSH key authenticating into git repository

return:
String
arguments:
object

privateKey:
object

  Private SSH key authenticating into git repository

return:
String
arguments:
object

##### Example

    {
      "publicKey": {
        "return": "string",
        "arguments": {}
      },
      "privateKey": {
        "return": "string",
        "arguments": {}
      }
    }

## Spec: object

displayName:
object

return:
String
arguments:
object

categoryDescription:
object

return:
String
arguments:
object

keywords:
object

return:
String
arguments:
object

maturity:
object

return:
String
arguments:
object

maintainers:
object

return:
Maintainer
arguments:
object

minKubeVersion:
object

return:
String
arguments:
object

provider:
object

return:
Provider
arguments:
object

links:
object

return:
Link
arguments:
object

experiments:
object

return:
String
arguments:
object

chaosExpCRDLink:
object

return:
String
arguments:
object

platforms:
object

return:
String
arguments:
object

chaosType:
object

return:
String
arguments:
object

##### Example

    {
      "displayName": {
        "return": "string",
        "arguments": {}
      },
      "categoryDescription": {
        "return": "string",
        "arguments": {}
      },
      "keywords": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "maturity": {
        "return": "string",
        "arguments": {}
      },
      "maintainers": {
        "return": [
          {
            "name": {
              "return": "string",
              "arguments": {}
            },
            "email": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "minKubeVersion": {
        "return": "string",
        "arguments": {}
      },
      "provider": {
        "return": {
          "name": {
            "return": "string",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "links": {
        "return": [
          {
            "name": {
              "return": "string",
              "arguments": {}
            },
            "url": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "experiments": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "chaosExpCRDLink": {
        "return": "string",
        "arguments": {}
      },
      "platforms": {
        "return": [
          "string"
        ],
        "arguments": {}
      },
      "chaosType": {
        "return": "string",
        "arguments": {}
      }
    }

## String: string

The `String`scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.

## SubData: object

date:
object

return:
Float
arguments:
object

value:
object

return:
String
arguments:
object

subDataName:
object

return:
String
arguments:
object

##### Example

    {
      "date": {
        "return": "number",
        "arguments": {}
      },
      "value": {
        "return": "string",
        "arguments": {}
      },
      "subDataName": {
        "return": "string",
        "arguments": {}
      }
    }

## Subscription: object

getClusterEvents:
object

  Listens cluster events from the graphql server

return:
ClusterEventResponse
arguments:
object

projectID:
String

clusterConnect:
object

  Listens cluster operation request from the graphql server

return:
ClusterActionResponse
arguments:
object

clusterInfo:
ClusterIdentity

getWorkflowEvents:
object

  Sends workflow events to the subscriber

return:
WorkflowRun
arguments:
object

projectID:
String

getPodLog:
object

  Returns experiment logs from the pods

return:
PodLogResponse
arguments:
object

request:
PodLogRequest

getKubeObject:
object

  Returns a kubernetes object given an input

return:
KubeObjectResponse
arguments:
object

request:
KubeObjectRequest

viewDashboard:
object

  Takes a dashboard view id, prometheus queries, dashboard query map and data variables to query prometheus and send data periodically to the subscribed client

return:
DashboardPromResponse
arguments:
object

dashboardID:
String
promQueries:
PromQueryInput
dashboardQueryMap:
QueryMapForPanelGroup
dataVariables:
DataVars

##### Example

    {
      "getClusterEvents": {
        "return": {
          "eventID": {
            "return": "object",
            "arguments": {}
          },
          "eventType": {
            "return": "string",
            "arguments": {}
          },
          "eventName": {
            "return": "string",
            "arguments": {}
          },
          "description": {
            "return": "string",
            "arguments": {}
          },
          "cluster": {
            "return": {
              "clusterID": {
                "return": "object",
                "arguments": {}
              },
              "projectID": {
                "return": "object",
                "arguments": {}
              },
              "clusterName": {
                "return": "string",
                "arguments": {}
              },
              "description": {
                "return": "string",
                "arguments": {}
              },
              "platformName": {
                "return": "string",
                "arguments": {}
              },
              "accessKey": {
                "return": "string",
                "arguments": {}
              },
              "isRegistered": {
                "return": "boolean",
                "arguments": {}
              },
              "isClusterConfirmed": {
                "return": "boolean",
                "arguments": {}
              },
              "isActive": {
                "return": "boolean",
                "arguments": {}
              },
              "updatedAt": {
                "return": "string",
                "arguments": {}
              },
              "createdAt": {
                "return": "string",
                "arguments": {}
              },
              "clusterType": {
                "return": "string",
                "arguments": {}
              },
              "noOfSchedules": {
                "return": "number",
                "arguments": {}
              },
              "noOfWorkflows": {
                "return": "number",
                "arguments": {}
              },
              "token": {
                "return": "string",
                "arguments": {}
              },
              "agentNamespace": {
                "return": "string",
                "arguments": {}
              },
              "serviceAccount": {
                "return": "string",
                "arguments": {}
              },
              "agentScope": {
                "return": "string",
                "arguments": {}
              },
              "agentNsExists": {
                "return": "boolean",
                "arguments": {}
              },
              "agentSaExists": {}
            }
          }
        }
      }
    }

## TemplateInput: object

Details for saving the template

manifest:
String

  Workflow manifest in JSON escaped format

templateName:
String

  Name of the template

templateDescription:
String

  Description of the template

projectID:
String

  Name of the project

isCustomWorkflow:
Boolean

  Bool value indicating whether the workflow is a custom workflow or not

##### Example

    {
      "manifest": "string",
      "templateName": "string",
      "templateDescription": "string",
      "projectID": "string",
      "isCustomWorkflow": "boolean"
    }

## TimeFrequency: string

object
DAILY
object
HOURLY
object
MONTHLY

## Toleration: object

tolerationSeconds:
Int
key:
String
operator:
String
effect:
String
value:
String

##### Example

    {
      "tolerationSeconds": "number",
      "key": "string",
      "operator": "string",
      "effect": "string",
      "value": "string"
    }

## TotalCount: object

Defines total number of projects, users, agents and workflows

projects:
object

  Total number of projects

return:
Int
arguments:
object

users:
object

  Total number of users

return:
Int
arguments:
object

agents:
object

  Total number of agents

return:
AgentStat
arguments:
object

workflows:
object

  Total number of workflows

return:
WorkflowStat
arguments:
object

##### Example

    {
      "projects": {
        "return": "number",
        "arguments": {}
      },
      "users": {
        "return": "number",
        "arguments": {}
      },
      "agents": {
        "return": {
          "ns": {
            "return": "number",
            "arguments": {}
          },
          "cluster": {
            "return": "number",
            "arguments": {}
          },
          "total": {
            "return": "number",
            "arguments": {}
          },
          "active": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      },
      "workflows": {
        "return": {
          "schedules": {
            "return": "number",
            "arguments": {}
          },
          "runs": {
            "return": "number",
            "arguments": {}
          },
          "expRuns": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      }
    }

## UpdateChaosHubRequest: object

id:
String

  ID of the chaos hub

hubName:
String

  Name of the chaos hub

repoURL:
String

  URL of the git repository

repoBranch:
String

  Branch of the git repository

isPrivate:
Boolean

  Bool value indicating whether the hub is private or not.

authType:
AuthType

  Type of authentication used: BASIC, SSH, TOKEN

token:
String

  Token for authentication of private chaos hub

userName:
String

  Git username

password:
String

  Git password

sshPrivateKey:
String

  Private SSH key for authenticating into private chaos hub

sshPublicKey:
String

  Public SSH key for authenticating into private chaos hub

projectID:
String

  Project ID associated with this chaos hub

##### Example

    {
      "id": "string",
      "hubName": "string",
      "repoURL": "string",
      "repoBranch": "string",
      "isPrivate": "boolean",
      "authType": "string",
      "token": "string",
      "userName": "string",
      "password": "string",
      "sshPrivateKey": "string",
      "sshPublicKey": "string",
      "projectID": "string"
    }

## UpdateDBInput: object

dbID:
String
dsID:
String
dbName:
String
dbTypeName:
String
dbTypeID:
String
dbInformation:
String
chaosEventQueryTemplate:
String
chaosVerdictQueryTemplate:
String
applicationMetadataMap:
ApplicationMetadata
panelGroups:
UpdatePanelGroupInput
endTime:
String
startTime:
String
clusterID:
ID
refreshRate:
String

##### Example

    {
      "dbID": "string",
      "dsID": "string",
      "dbName": "string",
      "dbTypeName": "string",
      "dbTypeID": "string",
      "dbInformation": "string",
      "chaosEventQueryTemplate": "string",
      "chaosVerdictQueryTemplate": "string",
      "applicationMetadataMap": [
        {
          "namespace": "string",
          "applications": [
            {
              "kind": "string",
              "names": [
                "string"
              ]
            }
          ]
        }
      ],
      "panelGroups": [
        {
          "panelGroupName": "string",
          "panelGroupID": "string",
          "panels": [
            {
              "panelID": "string",
              "dbID": "string",
              "yAxisLeft": "string",
              "yAxisRight": "string",
              "xAxisDown": "string",
              "unit": "string",
              "panelGroupID": "string",
              "createdAt": "string",
              "promQueries": [
                {
                  "queryID": "string",
                  "promQueryName": "string",
                  "legend": "string",
                  "resolution": "string",
                  "minstep": "string",
                  "line": "boolean",
                  "closeArea": "boolean"
                }
              ],
              "panelOptions": {
                "points": "boolean",
                "grIDs": "boolean",
                "leftAxis": "boolean"
              },
              "panelName": "string"
            }
          ]
        }
      ],
      "endTime": "string",
      "startTime": "string",
      "clusterID": "object",
      "refreshRate": "string"
    }

## UpdatePanelGroupInput: object

panelGroupName:
String
panelGroupID:
String
panels:
Panel

##### Example

    {
      "panelGroupName": "string",
      "panelGroupID": "string",
      "panels": [
        {
          "panelID": "string",
          "dbID": "string",
          "yAxisLeft": "string",
          "yAxisRight": "string",
          "xAxisDown": "string",
          "unit": "string",
          "panelGroupID": "string",
          "createdAt": "string",
          "promQueries": [
            {
              "queryID": "string",
              "promQueryName": "string",
              "legend": "string",
              "resolution": "string",
              "minstep": "string",
              "line": "boolean",
              "closeArea": "boolean"
            }
          ],
          "panelOptions": {
            "points": "boolean",
            "grIDs": "boolean",
            "leftAxis": "boolean"
          },
          "panelName": "string"
        }
      ]
    }

## UsageDataRequest: object

Defines input details for querying the total usage related details

pagination:
Pagination

  Pagination detail to fetch only a required number of data at a time

dateRange:
DateRange

  Rage of dates between which the data will be fetched

sort:
UsageSortInput

  Sorting details to fetch the data in a sorted manner

searchProject:
String

  Search field to search for a particular project and fetch it's data

##### Example

    {
      "pagination": {
        "page": "number",
        "limit": "number"
      },
      "dateRange": {
        "startDate": "string",
        "endDate": "string"
      },
      "sort": {
        "field": "string",
        "descending": "boolean"
      },
      "searchProject": "string"
    }

## UsageDataResponse: object

Defines total usage data

projects:
object

  Project related data

return:
ProjectData
arguments:
object

totalEntries:
object

  Total number of entries

return:
Int
arguments:
object

totalCount:
object

  Total number of projects, users, agents and workflows

return:
TotalCount
arguments:
object

##### Example

    {
      "projects": {
        "return": [
          {
            "workflows": {
              "return": {
                "schedules": {
                  "return": "number",
                  "arguments": {}
                },
                "runs": {
                  "return": "number",
                  "arguments": {}
                },
                "expRuns": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "agents": {
              "return": {
                "ns": {
                  "return": "number",
                  "arguments": {}
                },
                "cluster": {
                  "return": "number",
                  "arguments": {}
                },
                "total": {
                  "return": "number",
                  "arguments": {}
                },
                "active": {
                  "return": "number",
                  "arguments": {}
                }
              },
              "arguments": {}
            },
            "projectID": {
              "return": "string",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "totalEntries": {
        "return": "number",
        "arguments": {}
      },
      "totalCount": {
        "return": {
          "projects": {
            "return": "number",
            "arguments": {}
          },
          "users": {
            "return": "number",
            "arguments": {}
          },
          "agents": {
            "return": {
              "ns": {
                "return": "number",
                "arguments": {}
              },
              "cluster": {
                "return": "number",
                "arguments": {}
              },
              "total": {
                "return": "number",
                "arguments": {}
              },
              "active": {
                "return": "number",
                "arguments": {}
              }
            },
            "arguments": {}
          },
          "workflows": {
            "return": {
              "schedules": {
                "return": "number",
                "arguments": {}
              },
              "runs": {
                "return": "number",
                "arguments": {}
              },
              "expRuns": {
                "return": "number",
                "arguments": {}
              }
            },
            "arguments": {}
          }
        },
        "arguments": {}
      }
    }

## UsageSort: string

object
AGENTS
object
EXPERIMENT_RUNS
object
OWNER
object
PROJECT
object
SCHEDULES
object
TEAM_MEMBERS
object
WORKFLOW_RUNS

## UsageSortInput: object

Defines details required for sorting the data for a particular field

field:
UsageSort

  Field for which sorting will be done

descending:
Boolean

  Bool value indicating if sorting will be done in descending order or not

##### Example

    {
      "field": "string",
      "descending": "boolean"
    }

## Weightages: object

Defines the details of the weightages of each chaos experiment in the workflow

experimentName:
object

  Name of the experiment

return:
String
arguments:
object

weightage:
object

  Weightage of the experiment

return:
Int
arguments:
object

##### Example

    {
      "experimentName": {
        "return": "string",
        "arguments": {}
      },
      "weightage": {
        "return": "number",
        "arguments": {}
      }
    }

## WeightagesInput: object

Defines the details of the weightages of each chaos experiment in the workflow

experimentName:
String

  Name of the experiment

weightage:
Int

  Weightage of the experiment

##### Example

    {
      "experimentName": "string",
      "weightage": "number"
    }

## Workflow: object

Defines the details for a workflow

workflowID:
object

  ID of the workflow

return:
String
arguments:
object

workflowManifest:
object

  Manifest of the workflow

return:
String
arguments:
object

cronSyntax:
object

  Cron syntax of the workflow schedule

return:
String
arguments:
object

clusterName:
object

  Name of the target cluster in which the workflow is running

return:
String
arguments:
object

workflowName:
object

  Name of the workflow

return:
String
arguments:
object

workflowDescription:
object

  Description of the workflow

return:
String
arguments:
object

weightages:
object

  Array containing weightage and name of each chaos experiment in the workflow

return:
Weightages
arguments:
object

isCustomWorkflow:
object

  Bool value indicating whether the workflow is a custom workflow or not

return:
Boolean
arguments:
object

updatedAt:
object

  Timestamp when the workflow was last updated

return:
String
arguments:
object

createdAt:
object

  Timestamp when the workflow was created

return:
String
arguments:
object

projectID:
object

  ID of the project under which the workflow is scheduled

return:
ID
arguments:
object

clusterID:
object

  ID of the target cluster in which the workflow will run

return:
ID
arguments:
object

clusterType:
object

  Cluster type : Internal or External

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating if the workflow has removed

return:
Boolean
arguments:
object

lastUpdatedBy:
object

  Provides audit context to workflow i.e who ran the workflow

return:
String
arguments:
object

##### Example

    {
      "workflowID": {
        "return": "string",
        "arguments": {}
      },
      "workflowManifest": {
        "return": "string",
        "arguments": {}
      },
      "cronSyntax": {
        "return": "string",
        "arguments": {}
      },
      "clusterName": {
        "return": "string",
        "arguments": {}
      },
      "workflowName": {
        "return": "string",
        "arguments": {}
      },
      "workflowDescription": {
        "return": "string",
        "arguments": {}
      },
      "weightages": {
        "return": [
          {
            "experimentName": {
              "return": "string",
              "arguments": {}
            },
            "weightage": {
              "return": "number",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "isCustomWorkflow": {
        "return": "boolean",
        "arguments": {}
      },
      "updatedAt": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "object",
        "arguments": {}
      },
      "clusterID": {
        "return": "object",
        "arguments": {}
      },
      "clusterType": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      },
      "lastUpdatedBy": {
        "return": "string",
        "arguments": {}
      }
    }

## WorkflowFilterInput: object

Defines filter options for workflows

workflowName:
String

  Name of the workflow

clusterName:
String

  Name of the cluster agent in which the workflow is running

##### Example

    {
      "workflowName": "string",
      "clusterName": "string"
    }

## WorkflowRun: object

Defines the details of a workflow run

workflowRunID:
object

  ID of the workflow run which is to be queried

return:
ID
arguments:
object

workflowID:
object

  ID of the workflow

return:
ID
arguments:
object

clusterName:
object

  Name of the cluster agent in which the workflow is running

return:
String
arguments:
object

weightages:
object

  Array containing weightage and name of each chaos experiment in the workflow

return:
Weightages
arguments:
object

lastUpdated:
object

  Timestamp at which workflow run was last updated

return:
String
arguments:
object

projectID:
object

  ID of the project

return:
ID
arguments:
object

clusterID:
object

  ID of the target cluster in which the workflow is running

return:
ID
arguments:
object

workflowName:
object

  Name of the workflow

return:
String
arguments:
object

clusterType:
object

  Cluster type : Internal or External

return:
String
arguments:
object

phase:
object

  Phase of the workflow run

return:
String
arguments:
object

resiliencyScore:
object

  Resiliency score of the workflow

return:
Float
arguments:
object

experimentsPassed:
object

  Number of experiments passed

return:
Int
arguments:
object

experimentsFailed:
object

  Number of experiments failed

return:
Int
arguments:
object

experimentsAwaited:
object

  Number of experiments awaited

return:
Int
arguments:
object

experimentsStopped:
object

  Number of experiments stopped

return:
Int
arguments:
object

experimentsNa:
object

  Number of experiments which are not available

return:
Int
arguments:
object

totalExperiments:
object

  Total number of experiments

return:
Int
arguments:
object

executionData:
object

  Stores all the workflow run details related to the nodes of DAG graph and chaos results of the experiments

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating if the workflow run has removed

return:
Boolean
arguments:
object

executedBy:
object

  Provides audit context to workflow run i.e who ran the workflow

return:
String
arguments:
object

##### Example

    {
      "workflowRunID": {
        "return": "object",
        "arguments": {}
      },
      "workflowID": {
        "return": "object",
        "arguments": {}
      },
      "clusterName": {
        "return": "string",
        "arguments": {}
      },
      "weightages": {
        "return": [
          {
            "experimentName": {
              "return": "string",
              "arguments": {}
            },
            "weightage": {
              "return": "number",
              "arguments": {}
            }
          }
        ],
        "arguments": {}
      },
      "lastUpdated": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "object",
        "arguments": {}
      },
      "clusterID": {
        "return": "object",
        "arguments": {}
      },
      "workflowName": {
        "return": "string",
        "arguments": {}
      },
      "clusterType": {
        "return": "string",
        "arguments": {}
      },
      "phase": {
        "return": "string",
        "arguments": {}
      },
      "resiliencyScore": {
        "return": "number",
        "arguments": {}
      },
      "experimentsPassed": {
        "return": "number",
        "arguments": {}
      },
      "experimentsFailed": {
        "return": "number",
        "arguments": {}
      },
      "experimentsAwaited": {
        "return": "number",
        "arguments": {}
      },
      "experimentsStopped": {
        "return": "number",
        "arguments": {}
      },
      "experimentsNa": {
        "return": "number",
        "arguments": {}
      },
      "totalExperiments": {
        "return": "number",
        "arguments": {}
      },
      "executionData": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      },
      "executedBy": {
        "return": "string",
        "arguments": {}
      }
    }

## WorkflowRunDetails: object

noOfRuns:
object

return:
Int
arguments:
object

dateStamp:
object

return:
Float
arguments:
object

##### Example

    {
      "noOfRuns": {
        "return": "number",
        "arguments": {}
      },
      "dateStamp": {
        "return": "number",
        "arguments": {}
      }
    }

## WorkflowRunFilterInput: object

Defines input type for workflow run filter

workflowName:
String

  Name of the workflow

clusterName:
String

  Name of the cluster agent

workflowStatus:
WorkflowRunStatus

  Status of the workflow run

dateRange:
DateRange

  Date range for filtering purpose

##### Example

    {
      "workflowName": "string",
      "clusterName": "string",
      "workflowStatus": "string",
      "dateRange": {
        "startDate": "string",
        "endDate": "string"
      }
    }

## WorkflowRunRequest: object

Defines the details for a workflow run

workflowID:
ID

  ID of the workflow

workflowRunID:
ID

  ID of the workflow run which is to be queried

workflowName:
String

  Name of the workflow

executedBy:
String

  Provides audit context to workflow run i.e who ran the workflow

executionData:
String

  Stores all the workflow run details related to the nodes of DAG graph and chaos results of the experiments

clusterID:
ClusterIdentity

  ID of the cluster agent in which the workflow is running

completed:
Boolean

  Bool value indicating if the workflow run has completed

isRemoved:
Boolean

  Bool value indicating if the workflow run has removed

##### Example

    {
      "workflowID": "object",
      "workflowRunID": "object",
      "workflowName": "string",
      "executedBy": "string",
      "executionData": "string",
      "clusterID": {
        "clusterID": "string",
        "accessKey": "string",
        "version": "string"
      },
      "completed": "boolean",
      "isRemoved": "boolean"
    }

## WorkflowRunSortInput: object

Defines sorting options for workflow runs

field:
WorkflowSortingField

  Field in which sorting will be done

descending:
Boolean

  Bool value indicating whether the sorting will be done in descending order

##### Example

    {
      "field": "string",
      "descending": "boolean"
    }

## WorkflowRunStatsRequest: object

projectID:
ID
workflowIDs:
ID

##### Example

    {
      "projectID": "object",
      "workflowIDs": [
        "object"
      ]
    }

## WorkflowRunStatsResponse: object

totalWorkflowRuns:
object

return:
Int
arguments:
object

succeededWorkflowRuns:
object

return:
Int
arguments:
object

failedWorkflowRuns:
object

return:
Int
arguments:
object

runningWorkflowRuns:
object

return:
Int
arguments:
object

averageResiliencyScore:
object

return:
Float
arguments:
object

totalExperiments:
object

return:
Int
arguments:
object

experimentsPassed:
object

return:
Int
arguments:
object

experimentsFailed:
object

return:
Int
arguments:
object

experimentsAwaited:
object

return:
Int
arguments:
object

experimentsStopped:
object

return:
Int
arguments:
object

experimentsNa:
object

return:
Int
arguments:
object

passedPercentage:
object

return:
Float
arguments:
object

failedPercentage:
object

return:
Float
arguments:
object

workflowRunSucceededPercentage:
object

return:
Float
arguments:
object

workflowRunFailedPercentage:
object

return:
Float
arguments:
object

##### Example

    {
      "totalWorkflowRuns": {
        "return": "number",
        "arguments": {}
      },
      "succeededWorkflowRuns": {
        "return": "number",
        "arguments": {}
      },
      "failedWorkflowRuns": {
        "return": "number",
        "arguments": {}
      },
      "runningWorkflowRuns": {
        "return": "number",
        "arguments": {}
      },
      "averageResiliencyScore": {
        "return": "number",
        "arguments": {}
      },
      "totalExperiments": {
        "return": "number",
        "arguments": {}
      },
      "experimentsPassed": {
        "return": "number",
        "arguments": {}
      },
      "experimentsFailed": {
        "return": "number",
        "arguments": {}
      },
      "experimentsAwaited": {
        "return": "number",
        "arguments": {}
      },
      "experimentsStopped": {
        "return": "number",
        "arguments": {}
      },
      "experimentsNa": {
        "return": "number",
        "arguments": {}
      },
      "passedPercentage": {
        "return": "number",
        "arguments": {}
      },
      "failedPercentage": {
        "return": "number",
        "arguments": {}
      },
      "workflowRunSucceededPercentage": {
        "return": "number",
        "arguments": {}
      },
      "workflowRunFailedPercentage": {
        "return": "number",
        "arguments": {}
      }
    }

## WorkflowRunStatus: string

object
All
object
Failed
object
Running
object
Succeeded
object
Terminated

## WorkflowRunsData: object

value:
object

return:
Float
arguments:
object

workflowRunDetail:
object

return:
WorkflowRunDetails
arguments:
object

##### Example

    {
      "value": {
        "return": "number",
        "arguments": {}
      },
      "workflowRunDetail": {
        "return": {
          "noOfRuns": {
            "return": "number",
            "arguments": {}
          },
          "dateStamp": {
            "return": "number",
            "arguments": {}
          }
        },
        "arguments": {}
      }
    }

## WorkflowSortInput: object

Defines sorting options for workflow

field:
WorkflowSortingField

  Field in which sorting will be done

descending:
Boolean

  Bool value indicating whether the sorting will be done in descending order

##### Example

    {
      "field": "string",
      "descending": "boolean"
    }

## WorkflowSortingField: string

object
NAME
object
TIME

## WorkflowStat: object

Defines details of workflow statistics

schedules:
object

  Number of schedules

return:
Int
arguments:
object

runs:
object

  Number of workflow runs

return:
Int
arguments:
object

expRuns:
object

  Number of experiment runs

return:
Int
arguments:
object

##### Example

    {
      "schedules": {
        "return": "number",
        "arguments": {}
      },
      "runs": {
        "return": "number",
        "arguments": {}
      },
      "expRuns": {
        "return": "number",
        "arguments": {}
      }
    }

## WorkflowStatsResponse: object

date:
object

return:
Float
arguments:
object

value:
object

return:
Int
arguments:
object

##### Example

    {
      "date": {
        "return": "number",
        "arguments": {}
      },
      "value": {
        "return": "number",
        "arguments": {}
      }
    }

## WorkflowTemplate: object

Details for a workflow template

templateID:
object

  ID of the template

return:
ID
arguments:
object

manifest:
object

  Workflow manifest in JSON escaped string

return:
String
arguments:
object

templateName:
object

  Name of the template

return:
String
arguments:
object

templateDescription:
object

  Description of the template

return:
String
arguments:
object

projectID:
object

  ID of the project

return:
String
arguments:
object

projectName:
object

  Name of the project

return:
String
arguments:
object

createdAt:
object

  Time at which the manifest template was created

return:
String
arguments:
object

isRemoved:
object

  Bool value indicating if the workflow template has removed

return:
Boolean
arguments:
object

isCustomWorkflow:
object

  Bool value indicating whether the workflow template is a custom or not

return:
Boolean
arguments:
object

##### Example

    {
      "templateID": {
        "return": "object",
        "arguments": {}
      },
      "manifest": {
        "return": "string",
        "arguments": {}
      },
      "templateName": {
        "return": "string",
        "arguments": {}
      },
      "templateDescription": {
        "return": "string",
        "arguments": {}
      },
      "projectID": {
        "return": "string",
        "arguments": {}
      },
      "projectName": {
        "return": "string",
        "arguments": {}
      },
      "createdAt": {
        "return": "string",
        "arguments": {}
      },
      "isRemoved": {
        "return": "boolean",
        "arguments": {}
      },
      "isCustomWorkflow": {
        "return": "boolean",
        "arguments": {}
      }
    }

Documentation by DociQL