Harness · Schema

ApplicationSetGenerateRequest is a query for applicationset generate resources

DevOpsGitOpsInternal Developer PortalLifecycleSoftware DeliveryCI/CDContinuous DeliveryContinuous Integration

Properties

Name Type Description
applicationset object
yaml string
View JSON Schema on GitHub

JSON Schema

harness-applications-application-set-generate-request-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/harness/main/json-schema/harness-applications-application-set-generate-request-schema.json",
  "title": "ApplicationSetGenerateRequest  is a query for applicationset generate resources",
  "x-generated": "2026-10-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/harness-applicationset-api-openapi.yml#/components/schemas/applicationsApplicationSetGenerateRequest",
  "type": "object",
  "properties": {
    "applicationset": {
      "$ref": "#/$defs/applicationsApplicationSet"
    },
    "yaml": {
      "type": "string",
      "format": "byte",
      "title": "helper field for keeping string representation of marshalled ApplicationSetq"
    }
  },
  "$defs": {
    "applicationsApplicationDestination": {
      "type": "object",
      "properties": {
        "server": {
          "type": "string",
          "title": "Server specifies the URL of the target cluster and must be set to the Kubernetes control plane API"
        },
        "namespace": {
          "type": "string",
          "title": "Namespace specifies the target namespace for the application's resources.\nThe namespace will only be set for namespace-scoped resources that have not set a value for .metadata.namespace"
        },
        "name": {
          "type": "string",
          "title": "Name is an alternate way of specifying the target cluster by its symbolic name"
        }
      },
      "title": "ApplicationDestination holds information about the application's destination"
    },
    "applicationsApplicationMatchExpression": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "operator": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "applicationsApplicationPreservedFields": {
      "type": "object",
      "properties": {
        "annotations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "labels": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "applicationsApplicationSet": {
      "type": "object",
      "properties": {
        "metadata": {
          "$ref": "#/$defs/v1ObjectMeta"
        },
        "spec": {
          "$ref": "#/$defs/applicationsApplicationSetSpec"
        },
        "status": {
          "$ref": "#/$defs/applicationsApplicationSetStatus"
        }
      },
      "description": "ApplicationSet is a set of Application resources."
    },
    "applicationsApplicationSetApplicationStatus": {
      "type": "object",
      "properties": {
        "application": {
          "type": "string",
          "title": "Application contains the name of the Application resource"
        },
        "lastTransitionTime": {
          "$ref": "#/$defs/v1Time"
        },
        "message": {
          "type": "string",
          "title": "Message contains human-readable message indicating details about the status"
        },
        "status": {
          "type": "string",
          "title": "Status contains the AppSet's perceived status of the managed Application resource"
        },
        "step": {
          "type": "string",
          "title": "Step tracks which step this Application should be updated in"
        },
        "targetrevisions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "TargetRevision tracks the desired revisions the Application should be synced to."
        }
      },
      "title": "ApplicationSetApplicationStatus contains details about each Application managed by the ApplicationSet"
    },
    "applicationsApplicationSetCondition": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "title": "Type is an applicationset condition type"
        },
        "message": {
          "type": "string",
          "title": "Message contains human-readable message indicating details about condition"
        },
        "lastTransitionTime": {
          "$ref": "#/$defs/v1Time"
        },
        "status": {
          "type": "string",
          "title": "True/False/Unknown"
        },
        "reason": {
          "type": "string",
          "title": "Single word camelcase representing the reason for the status eg ErrorOccurred"
        }
      },
      "title": "ApplicationSetCondition contains details about an applicationset condition, which is usually an error or warning"
    },
    "applicationsApplicationSetGenerator": {
      "type": "object",
      "properties": {
        "list": {
          "$ref": "#/$defs/applicationsListGenerator"
        },
        "clusters": {
          "$ref": "#/$defs/applicationsClusterGenerator"
        },
        "git": {
          "$ref": "#/$defs/applicationsGitGenerator"
        },
        "scmProvider": {
          "$ref": "#/$defs/applicationsSCMProviderGenerator"
        },
        "clusterDecisionResource": {
          "$ref": "#/$defs/applicationsDuckTypeGenerator"
        },
        "pullRequest": {
          "$ref": "#/$defs/applicationsPullRequestGenerator"
        },
        "matrix": {
          "$ref": "#/$defs/applicationsMatrixGenerator"
        },
        "merge": {
          "$ref": "#/$defs/applicationsMergeGenerator"
        },
        "selector": {
          "$ref": "#/$defs/v1LabelSelector"
        },
        "plugin": {
          "$ref": "#/$defs/applicationsPluginGenerator"
        }
      },
      "description": "ApplicationSetGenerator represents a generator at the top level of an ApplicationSet."
    },
    "applicationsApplicationSetNestedGenerator": {
      "type": "object",
      "properties": {
        "list": {
          "$ref": "#/$defs/applicationsListGenerator"
        },
        "clusters": {
          "$ref": "#/$defs/applicationsClusterGenerator"
        },
        "git": {
          "$ref": "#/$defs/applicationsGitGenerator"
        },
        "scmProvider": {
          "$ref": "#/$defs/applicationsSCMProviderGenerator"
        },
        "clusterDecisionResource": {
          "$ref": "#/$defs/applicationsDuckTypeGenerator"
        },
        "pullRequest": {
          "$ref": "#/$defs/applicationsPullRequestGenerator"
        },
        "matrix": {
          "$ref": "#/$defs/v1JSON"
        },
        "merge": {
          "$ref": "#/$defs/v1JSON"
        },
        "selector": {
          "$ref": "#/$defs/v1LabelSelector"
        },
        "plugin": {
          "$ref": "#/$defs/applicationsPluginGenerator"
        }
      },
      "description": "ApplicationSetNestedGenerator represents a generator nested within a combination-type generator (MatrixGenerator or\nMergeGenerator)."
    },
    "applicationsApplicationSetResourceIgnoreDifferences": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name is the name of the application to ignore differences for. If not specified, the rule applies to all applications."
        },
        "jsonPointers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "JSONPointers is a list of JSON pointers to fields to ignore differences for."
        },
        "jqPathExpressions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "JQPathExpressions is a list of JQ path expressions to fields to ignore differences for."
        }
      },
      "description": "ApplicationSetResourceIgnoreDifferences configures how the ApplicationSet controller will ignore differences in live\napplications when applying changes from generated applications."
    },
    "applicationsApplicationSetRolloutStep": {
      "type": "object",
      "properties": {
        "matchExpressions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationMatchExpression"
          }
        },
        "maxUpdate": {
          "$ref": "#/$defs/intstrIntOrString"
        }
      }
    },
    "applicationsApplicationSetRolloutStrategy": {
      "type": "object",
      "properties": {
        "steps": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSetRolloutStep"
          }
        }
      }
    },
    "applicationsApplicationSetSpec": {
      "type": "object",
      "properties": {
        "goTemplate": {
          "type": "boolean"
        },
        "generators": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSetGenerator"
          }
        },
        "template": {
          "$ref": "#/$defs/applicationsApplicationSetTemplate"
        },
        "syncPolicy": {
          "$ref": "#/$defs/applicationsApplicationSetSyncPolicy"
        },
        "strategy": {
          "$ref": "#/$defs/applicationsApplicationSetStrategy"
        },
        "preservedFields": {
          "$ref": "#/$defs/applicationsApplicationPreservedFields"
        },
        "goTemplateOptions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "applyNestedSelectors": {
          "type": "boolean",
          "description": "ApplyNestedSelectors enables selectors defined within the generators of two level-nested matrix or merge generators\nDeprecated: This field is ignored, and the behavior is always enabled. The field will be removed in a future\nversion of the ApplicationSet CRD."
        },
        "ignoreApplicationDifferences": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSetResourceIgnoreDifferences"
          }
        },
        "templatePatch": {
          "type": "string"
        }
      },
      "description": "ApplicationSetSpec represents a class of application set state."
    },
    "applicationsApplicationSetStatus": {
      "type": "object",
      "properties": {
        "conditions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSetCondition"
          },
          "title": "INSERT ADDITIONAL STATUS FIELD - define observed state of cluster\nImportant: Run \"make\" to regenerate code after modifying this file"
        },
        "applicationStatus": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSetApplicationStatus"
          }
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsResourceStatus"
          },
          "description": "Resources is a list of Applications resources managed by this application set."
        },
        "resourcesCount": {
          "type": "string",
          "format": "int64",
          "description": "ResourcesCount is the total number of resources managed by this application set. The count may be higher than actual number of items in the Resources field when\nthe number of managed resources exceeds the limit imposed by the controller (to avoid making the status field too large)."
        },
        "health": {
          "$ref": "#/$defs/applicationsHealthStatus"
        }
      },
      "title": "ApplicationSetStatus defines the observed state of ApplicationSet"
    },
    "applicationsApplicationSetStrategy": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        },
        "rollingSync": {
          "$ref": "#/$defs/applicationsApplicationSetRolloutStrategy"
        },
        "deletionOrder": {
          "type": "string",
          "title": "DeletionOrder allows specifying the order for deleting generated apps when progressive sync is enabled.\naccepts values \"AllAtOnce\" and \"Reverse\""
        }
      },
      "description": "ApplicationSetStrategy configures how generated Applications are updated in sequence."
    },
    "applicationsApplicationSetSyncPolicy": {
      "type": "object",
      "properties": {
        "preserveResourcesOnDeletion": {
          "type": "boolean",
          "description": "PreserveResourcesOnDeletion will preserve resources on deletion. If PreserveResourcesOnDeletion is set to true, these Applications will not be deleted."
        },
        "applicationsSync": {
          "type": "string",
          "title": "ApplicationsSync represents the policy applied on the generated applications. Possible values are create-only, create-update, create-delete, sync\n+kubebuilder:validation:Optional\n+kubebuilder:validation:Enum=create-only;create-update;create-delete;sync"
        }
      },
      "description": "ApplicationSetSyncPolicy configures how generated Applications will relate to their\nApplicationSet."
    },
    "applicationsApplicationSetTemplate": {
      "type": "object",
      "properties": {
        "metadata": {
          "$ref": "#/$defs/applicationsApplicationSetTemplateMeta"
        },
        "spec": {
          "$ref": "#/$defs/applicationsApplicationSpec"
        }
      },
      "title": "ApplicationSetTemplate represents argocd ApplicationSpec"
    },
    "applicationsApplicationSetTemplateMeta": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "annotations": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "finalizers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "title": "ApplicationSetTemplateMeta represents the Argo CD application fields that may\nbe used for Applications generated from the ApplicationSet (based on metav1.ObjectMeta)"
    },
    "applicationsApplicationSource": {
      "type": "object",
      "properties": {
        "repoURL": {
          "type": "string",
          "title": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests"
        },
        "path": {
          "type": "string",
          "description": "Path is a directory path within the Git repository, and is only valid for applications sourced from Git."
        },
        "targetRevision": {
          "type": "string",
          "description": "TargetRevision defines the revision of the source to sync the application to.\nIn case of Git, this can be commit, tag, or branch. If omitted, will equal to HEAD.\nIn case of Helm, this is a semver tag for the Chart's version."
        },
        "helm": {
          "$ref": "#/$defs/applicationsApplicationSourceHelm"
        },
        "kustomize": {
          "$ref": "#/$defs/applicationsApplicationSourceKustomize"
        },
        "ksonnet": {
          "$ref": "#/$defs/applicationsApplicationSourceKsonnet"
        },
        "directory": {
          "$ref": "#/$defs/applicationsApplicationSourceDirectory"
        },
        "plugin": {
          "$ref": "#/$defs/applicationsApplicationSourcePlugin"
        },
        "chart": {
          "type": "string",
          "description": "Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo."
        },
        "ref": {
          "type": "string",
          "description": "Ref is reference to another source within sources field. This field will not be used if used with a `source` tag."
        },
        "name": {
          "type": "string",
          "description": "Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications."
        }
      },
      "title": "ApplicationSource contains all information about the source of an application"
    },
    "applicationsApplicationSourceDirectory": {
      "type": "object",
      "properties": {
        "recurse": {
          "type": "boolean",
          "title": "Recurse specifies whether to scan a directory recursively for manifests"
        },
        "jsonnet": {
          "$ref": "#/$defs/applicationsApplicationSourceJsonnet"
        },
        "exclude": {
          "type": "string",
          "title": "Exclude contains a glob pattern to match paths against that should be explicitly excluded from being used during manifest generation"
        },
        "include": {
          "type": "string",
          "title": "Include contains a glob pattern to match paths against that should be explicitly included during manifest generation"
        }
      },
      "title": "ApplicationSourceDirectory holds options for applications of type plain YAML or Jsonnet"
    },
    "applicationsApplicationSourceHelm": {
      "type": "object",
      "properties": {
        "valueFiles": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "ValuesFiles is a list of Helm value files to use when generating a template"
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsHelmParameter"
          },
          "title": "Parameters is a list of Helm parameters which are passed to the helm template command upon manifest generation"
        },
        "releaseName": {
          "type": "string",
          "title": "ReleaseName is the Helm release name to use. If omitted it will use the application name"
        },
        "values": {
          "type": "string",
          "title": "Values specifies Helm values to be passed to helm template, typically defined as a block"
        },
        "fileParameters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsHelmFileParameter"
          },
          "title": "FileParameters are file parameters to the helm template"
        },
        "version": {
          "type": "string",
          "title": "Version is the Helm version to use for templating (either \"2\" or \"3\")"
        },
        "passCredentials": {
          "type": "boolean",
          "title": "PassCredentials pass credentials to all domains (Helm's --pass-credentials)"
        },
        "ignoreMissingValueFiles": {
          "type": "boolean",
          "title": "IgnoreMissingValueFiles prevents helm template from failing when valueFiles do not exist locally by not appending them to helm template --values"
        },
        "skipCrds": {
          "type": "boolean",
          "title": "SkipCrds skips custom resource definition installation step (Helm's --skip-crds)"
        },
        "valuesObject": {
          "type": "object",
          "title": "ValuesObject specifies Helm values to be passed to helm template, defined as a map. This takes precedence over Values.\n+kubebuilder:pruning:PreserveUnknownFields"
        },
        "namespace": {
          "type": "string",
          "description": "Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace."
        },
        "kubeVersion": {
          "type": "string",
          "description": "KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD\nuses the Kubernetes version of the target cluster."
        },
        "apiVersions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default,\nArgo CD uses the API versions of the target cluster. The format is [group/]version/kind."
        },
        "skipTests": {
          "type": "boolean",
          "description": "SkipTests skips test manifest installation step (Helm's --skip-tests)."
        },
        "skipSchemaValidation": {
          "type": "boolean",
          "title": "SkipSchemaValidation skips JSON schema validation (Helm's --skip-schema-validation)"
        }
      },
      "title": "ApplicationSourceHelm holds helm specific options"
    },
    "applicationsApplicationSourceJsonnet": {
      "type": "object",
      "properties": {
        "extVars": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsJsonnetVar"
          },
          "title": "ExtVars is a list of Jsonnet External Variables"
        },
        "tlas": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsJsonnetVar"
          },
          "title": "TLAS is a list of Jsonnet Top-level Arguments"
        },
        "libs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "Additional library search dirs"
        }
      },
      "title": "ApplicationSourceJsonnet holds options specific to applications of type Jsonnet"
    },
    "applicationsApplicationSourceKsonnet": {
      "type": "object",
      "properties": {
        "environment": {
          "type": "string",
          "title": "Environment is a ksonnet application environment name"
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsKsonnetParameter"
          },
          "title": "Parameters are a list of ksonnet component parameter override values"
        }
      },
      "title": "ApplicationSourceKsonnet holds ksonnet specific options"
    },
    "applicationsApplicationSourceKustomize": {
      "type": "object",
      "properties": {
        "namePrefix": {
          "type": "string",
          "title": "NamePrefix overrides the namePrefix in the kustomization.yaml for Kustomize apps"
        },
        "nameSuffix": {
          "type": "string",
          "title": "NameSuffix overrides the nameSuffix in the kustomization.yaml for Kustomize apps"
        },
        "images": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "Images is a list of Kustomize image override specifications"
        },
        "commonLabels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "title": "CommonLabels is a list of additional labels to add to rendered manifests"
        },
        "version": {
          "type": "string",
          "title": "Version controls which version of Kustomize to use for rendering manifests"
        },
        "commonAnnotations": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "title": "CommonAnnotations is a list of additional annotations to add to rendered manifests"
        },
        "forceCommonLabels": {
          "type": "boolean",
          "title": "ForceCommonLabels specifies whether to force applying common labels to resources for Kustomize apps"
        },
        "forceCommonAnnotations": {
          "type": "boolean",
          "title": "ForceCommonAnnotations specifies whether to force applying common annotations to resources for Kustomize apps"
        },
        "namespace": {
          "type": "string",
          "title": "Namespace sets the namespace that Kustomize adds to all resources"
        },
        "commonAnnotationsEnvsubst": {
          "type": "boolean",
          "title": "CommonAnnotationsEnvsubst specifies whether to apply env variables substitution for annotation values"
        },
        "replicas": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsKustomizeReplicas"
          },
          "title": "Replicas is a list of Kustomize Replicas override specifications"
        },
        "patches": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsKustomizePatch"
          },
          "title": "Patches is a list of Kustomize patches"
        },
        "components": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "title": "Components specifies a list of kustomize components to add to the kustomization before building"
        },
        "labelWithoutSelector": {
          "type": "boolean",
          "title": "LabelWithoutSelector specifies whether to apply common labels to resource selectors or not"
        },
        "kubeVersion": {
          "type": "string",
          "description": "KubeVersion specifies the Kubernetes API version to pass to Helm when templating manifests. By default, Argo CD\nuses the Kubernetes version of the target cluster."
        },
        "apiVersions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "APIVersions specifies the Kubernetes resource API versions to pass to Helm when templating manifests. By default,\nArgo CD uses the API versions of the target cluster. The format is [group/]version/kind."
        },
        "ignoreMissingComponents": {
          "type": "boolean",
          "title": "IgnoreMissingComponents prevents kustomize from failing when components do not exist locally by not appending them to kustomization file"
        },
        "labelIncludeTemplates": {
          "type": "boolean",
          "title": "LabelIncludeTemplates specifies whether to apply common labels to resource templates or not"
        }
      },
      "title": "ApplicationSourceKustomize holds options specific to an Application source specific to Kustomize"
    },
    "applicationsApplicationSourcePlugin": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "env": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsEnvEntry"
          }
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSourcePluginParameter"
          }
        }
      },
      "title": "ApplicationSourcePlugin holds options specific to config management plugins"
    },
    "applicationsApplicationSourcePluginParameter": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name is the name identifying a parameter."
        },
        "string": {
          "type": "string",
          "description": "String_ is the value of a string type parameter."
        },
        "map": {
          "$ref": "#/$defs/applicationsOptionalMap"
        },
        "array": {
          "$ref": "#/$defs/applicationsOptionalArray"
        }
      }
    },
    "applicationsApplicationSpec": {
      "type": "object",
      "properties": {
        "source": {
          "$ref": "#/$defs/applicationsApplicationSource"
        },
        "destination": {
          "$ref": "#/$defs/applicationsApplicationDestination"
        },
        "project": {
          "type": "string",
          "description": "Project is a reference to the project this application belongs to.\nThe empty string means that application belongs to the 'default' project."
        },
        "syncPolicy": {
          "$ref": "#/$defs/applicationsSyncPolicy"
        },
        "ignoreDifferences": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsResourceIgnoreDifferences"
          },
          "title": "IgnoreDifferences is a list of resources and their fields which should be ignored during comparison"
        },
        "info": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsInfo"
          },
          "title": "Info contains a list of information (URLs, email addresses, and plain text) that relates to the application"
        },
        "revisionHistoryLimit": {
          "type": "string",
          "format": "int64",
          "description": "RevisionHistoryLimit limits the number of items kept in the application's revision history, which is used for informational purposes as well as for rollbacks to previous versions.\nThis should only be changed in exceptional circumstances.\nSetting to zero will store no history. This will reduce storage used.\nIncreasing will increase the space used to store the history, so we do not recommend increasing it.\nDefault is 10."
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/applicationsApplicationSource"
          },
          "title": "Sources is a reference to the location of the application's manifests or chart"
        },
        "sourceHydrator": {
          "$ref": "#/$defs/applicationsSourceHydrator"
        }
      },
      "description": "ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision."
    },
    "applicationsBackoff": {
      "type": "object",
      "properties": {
        "duration": {
          "type": "string",
          "title": "Duration is the amount to back off. Default unit is seconds, but could also be a duration (e.g. \"2m\", \"1h\")"
        },
        "factor": {
          "type": "string",
          "format": "int64",
          "title": "Factor is a factor to multiply the base duration after each failed retry"
        },
        "maxDuration": {
          "type": "string",
          "title": "MaxDuration is the maximum amount of time allowed for the backoff strategy"
        }
      },
      "title": "Backoff is the backoff strategy to use on subsequent retries for failing syncs"
    },
    "applicationsBasicAuthBitbucketServer": {
      "type": "object",
      "properties": {
        "username": {
          "type": "string",
          "title": "Username for Basic auth"
        },
        "passwordRef": {
          "$ref": "#/$defs/applicationsSecretRef"
        }
      },
      "description": "BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth."
    },
    "applicationsBearerTokenBitbucket": {
      "type": "object",
      "properties": {
        "tokenRef": {
          "$ref": "#/$defs/applicationsSecretRef"
        }
      },
      "description": "BearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth."
    },
    "applicationsBearerTokenBitbucketCloud": {
      "type": "object",
      "properties": {
        "tokenRef": {
          "$ref": "#/$defs/applicationsSecretRef"
        }
      },
      "description": "BearerTokenBitbucketCloud defines the Bearer token for BitBucket AppToken auth."
    },
    "applicationsClusterGenerator": {
      "type": "object",
      "properties": {
        "selector": {
          "$ref": "#/$defs/v1LabelSelector"
        },
        "template": {
          "$ref": "#/$defs/applicationsApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "title": "Values contains key/value pairs which are passed directly as parameters to the template"
        },
        "flatList": {
          "type": "boolean",
          "title": "returns the clusters a single 'clusters' value in the template"
        }
      },
      "description": "ClusterGenerator defines a generator to match against clusters registered with ArgoCD."
    },
    "applicationsConfigMapKeyRef": {
      "type": "object",
      "properties": {
        "configMapName": {
          "type": "string"
        },
        "key": {
          "type": "string"
        }
      },
      "description": "ConfigMapKeyRef struct for a reference to a configmap key."
    },
    "applicationsDrySource": {
      "type": "object",
      "properties": {
        "repoURL": {
          "type": "string",
          "title": "RepoURL is the URL to the git repository that contains the application manifests"
        },
        "targetRevision": {
          "type": "string",
          "title": "TargetRevision defines the revision of the source to hydrate"
        },
        "path": {
          "type": "string",
          "title": "Path is a directory path within the Git repository where the manifests are located"
        },
        "helm": {
          "$ref": "#/$defs/applicationsApplicationSourceHelm"
        },
        "kustomize": {
          "$ref": "#/$defs/applicationsApplicationSourceKustomize"
        },
        "directory": {
          "$re

# --- truncated at 32 KB (86 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/harness/refs/heads/main/json-schema/harness-applications-application-set-generate-request-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/harness-applications-application-set-generate-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.