{
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "swagger": "2.0",
  "info": {
    "description": "Description of all APIs",
    "title": "Consolidate Services",
    "version": "version not set"
  },
  "paths": {
    "/api/v1/account": {
      "get": {
        "tags": [
          "AccountService"
        ],
        "summary": "ListAccounts returns the list of accounts",
        "operationId": "AccountService_ListAccounts",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountAccountsList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/account/can-i/{resource}/{action}/{subresource}": {
      "get": {
        "tags": [
          "AccountService"
        ],
        "summary": "CanI checks if the current account has permission to perform an action",
        "operationId": "AccountService_CanI",
        "parameters": [
          {
            "type": "string",
            "name": "resource",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "action",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "subresource",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountCanIResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/account/password": {
      "put": {
        "tags": [
          "AccountService"
        ],
        "summary": "UpdatePassword updates an account's password to a new value",
        "operationId": "AccountService_UpdatePassword",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/accountUpdatePasswordRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountUpdatePasswordResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/account/{name}": {
      "get": {
        "tags": [
          "AccountService"
        ],
        "summary": "GetAccount returns an account",
        "operationId": "AccountService_GetAccount",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountAccount"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/account/{name}/token": {
      "post": {
        "tags": [
          "AccountService"
        ],
        "summary": "CreateToken creates a token",
        "operationId": "AccountService_CreateToken",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/accountCreateTokenRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountCreateTokenResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/account/{name}/token/{id}": {
      "delete": {
        "tags": [
          "AccountService"
        ],
        "summary": "DeleteToken deletes a token",
        "operationId": "AccountService_DeleteToken",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "id",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/accountEmptyResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "List returns list of applications",
        "operationId": "ApplicationService_List",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name.",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "description": "forces application reconciliation if set to 'hard'.",
            "name": "refresh",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications.",
            "name": "projects",
            "in": "query"
          },
          {
            "type": "string",
            "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.",
            "name": "resourceVersion",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the selector to restrict returned list to applications only with matched labels.",
            "name": "selector",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the repoURL to restrict returned list applications.",
            "name": "repo",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications (legacy name for backwards-compatibility).",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Create creates an application",
        "operationId": "ApplicationService_Create",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          {
            "type": "boolean",
            "name": "upsert",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "validate",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/manifestsWithFiles": {
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "GetManifestsWithFiles returns application manifests using provided files to generate them",
        "operationId": "ApplicationService_GetManifestsWithFiles",
        "parameters": [
          {
            "description": " (streaming inputs)",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationApplicationManifestQueryWithFilesWrapper"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryManifestResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{appName}/server-side-diff": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ServerSideDiff performs server-side diff calculation using dry-run apply",
        "operationId": "ApplicationService_ServerSideDiff",
        "parameters": [
          {
            "type": "string",
            "name": "appName",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "name": "targetManifests",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationServerSideDiffResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{application.metadata.name}": {
      "put": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Update updates an application",
        "operationId": "ApplicationService_Update",
        "parameters": [
          {
            "type": "string",
            "description": "Name must be unique within a namespace. Is required when creating resources, although\nsome resources may allow a client to request the generation of an appropriate name\nautomatically. Name is primarily intended for creation idempotence and configuration\ndefinition.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names\n+optional",
            "name": "application.metadata.name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          {
            "type": "boolean",
            "name": "validate",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{applicationName}/managed-resources": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ManagedResources returns list of managed resources",
        "operationId": "ApplicationService_ManagedResources",
        "parameters": [
          {
            "type": "string",
            "name": "applicationName",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationManagedResourcesResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{applicationName}/resource-tree": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ResourceTree returns resource tree",
        "operationId": "ApplicationService_ResourceTree",
        "parameters": [
          {
            "type": "string",
            "name": "applicationName",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationTree"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Get returns an application by name",
        "operationId": "ApplicationService_Get",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "forces application reconciliation if set to 'hard'.",
            "name": "refresh",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications.",
            "name": "projects",
            "in": "query"
          },
          {
            "type": "string",
            "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.",
            "name": "resourceVersion",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the selector to restrict returned list to applications only with matched labels.",
            "name": "selector",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the repoURL to restrict returned list applications.",
            "name": "repo",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications (legacy name for backwards-compatibility).",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Delete deletes an application",
        "operationId": "ApplicationService_Delete",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "name": "cascade",
            "in": "query"
          },
          {
            "type": "string",
            "name": "propagationPolicy",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "patch": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Patch patch an application",
        "operationId": "ApplicationService_Patch",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationApplicationPatchRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/events": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ListResourceEvents returns a list of event resources",
        "operationId": "ApplicationService_ListResourceEvents",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "resourceNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceUID",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1EventList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/links": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ListLinks returns the list of all application deep links",
        "operationId": "ApplicationService_ListLinks",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationLinksResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/logs": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "PodLogs returns stream of log entries for the specified pod. Pod",
        "operationId": "ApplicationService_PodLogs2",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "podName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "container",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "name": "sinceSeconds",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Represents seconds of UTC time since Unix epoch\n1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to\n9999-12-31T23:59:59Z inclusive.",
            "name": "sinceTime.seconds",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "Non-negative fractions of a second at nanosecond resolution. Negative\nsecond values with fractions must still have non-negative nanos values\nthat count forward in time. Must be from 0 to 999,999,999\ninclusive. This field may be limited in precision depending on context.",
            "name": "sinceTime.nanos",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "name": "tailLines",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "follow",
            "in": "query"
          },
          {
            "type": "string",
            "name": "untilTime",
            "in": "query"
          },
          {
            "type": "string",
            "name": "filter",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "previous",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "matchCase",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.(streaming responses)",
            "schema": {
              "type": "object",
              "title": "Stream result of applicationLogEntry",
              "properties": {
                "error": {
                  "$ref": "#/definitions/runtimeStreamError"
                },
                "result": {
                  "$ref": "#/definitions/applicationLogEntry"
                }
              }
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/manifests": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "GetManifests returns application manifests",
        "operationId": "ApplicationService_GetManifests",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "revision",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string",
              "format": "int64"
            },
            "collectionFormat": "multi",
            "name": "sourcePositions",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "name": "revisions",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "noCache",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryManifestResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/operation": {
      "delete": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "TerminateOperation terminates the currently running operation",
        "operationId": "ApplicationService_TerminateOperation",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationOperationTerminateResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/pods/{podName}/logs": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "PodLogs returns stream of log entries for the specified pod. Pod",
        "operationId": "ApplicationService_PodLogs",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "podName",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "container",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "name": "sinceSeconds",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Represents seconds of UTC time since Unix epoch\n1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to\n9999-12-31T23:59:59Z inclusive.",
            "name": "sinceTime.seconds",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "Non-negative fractions of a second at nanosecond resolution. Negative\nsecond values with fractions must still have non-negative nanos values\nthat count forward in time. Must be from 0 to 999,999,999\ninclusive. This field may be limited in precision depending on context.",
            "name": "sinceTime.nanos",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "name": "tailLines",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "follow",
            "in": "query"
          },
          {
            "type": "string",
            "name": "untilTime",
            "in": "query"
          },
          {
            "type": "string",
            "name": "filter",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "previous",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "matchCase",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.(streaming responses)",
            "schema": {
              "type": "object",
              "title": "Stream result of applicationLogEntry",
              "properties": {
                "error": {
                  "$ref": "#/definitions/runtimeStreamError"
                },
                "result": {
                  "$ref": "#/definitions/applicationLogEntry"
                }
              }
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/resource": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "GetResource returns single application resource",
        "operationId": "ApplicationService_GetResource",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResourceResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "PatchResource patch single application resource",
        "operationId": "ApplicationService_PatchResource",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "patchType",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResourceResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "DeleteResource deletes a single application resource",
        "operationId": "ApplicationService_DeleteResource",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "force",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "orphan",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/resource/actions": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ListResourceActions returns list of resource actions",
        "operationId": "ApplicationService_ListResourceActions",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationResourceActionsListResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "description": "Deprecated: use RunResourceActionV2 instead. This version does not support resource action parameters but is\nmaintained for backward compatibility. It will be removed in a future release.",
        "tags": [
          "ApplicationService"
        ],
        "summary": "RunResourceAction runs a resource action",
        "operationId": "ApplicationService_RunResourceAction",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/resource/actions/v2": {
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "RunResourceActionV2 runs a resource action with parameters",
        "operationId": "ApplicationService_RunResourceActionV2",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationResourceActionRunRequestV2"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/resource/links": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "ListResourceLinks returns the list of all resource deep links",
        "operationId": "ApplicationService_ListResourceLinks",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "resourceName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationLinksResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/revisions/{revision}/chartdetails": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Get the chart metadata (description, maintainers, home) for a specific revision of the application",
        "operationId": "ApplicationService_RevisionChartDetails",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the revision of the app",
            "name": "revision",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "source index (for multi source apps).",
            "name": "sourceIndex",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "versionId from historical data (for multi source apps).",
            "name": "versionId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ChartDetails"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/revisions/{revision}/metadata": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Get the meta-data (author, date, tags, message) for a specific revision of the application",
        "operationId": "ApplicationService_RevisionMetadata",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the revision of the app",
            "name": "revision",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "source index (for multi source apps).",
            "name": "sourceIndex",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "versionId from historical data (for multi source apps).",
            "name": "versionId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RevisionMetadata"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/revisions/{revision}/ocimetadata": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Get the chart metadata (description, maintainers, home) for a specific revision of the application",
        "operationId": "ApplicationService_GetOCIMetadata",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the revision of the app",
            "name": "revision",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "source index (for multi source apps).",
            "name": "sourceIndex",
            "in": "query"
          },
          {
            "type": "integer",
            "format": "int32",
            "description": "versionId from historical data (for multi source apps).",
            "name": "versionId",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1OCIMetadata"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/rollback": {
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Rollback syncs an application to its target state",
        "operationId": "ApplicationService_Rollback",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationApplicationRollbackRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/spec": {
      "put": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "UpdateSpec updates an application spec",
        "operationId": "ApplicationService_UpdateSpec",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSpec"
            }
          },
          {
            "type": "boolean",
            "name": "validate",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSpec"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/sync": {
      "post": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Sync syncs an application to its target state",
        "operationId": "ApplicationService_Sync",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationApplicationSyncRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Application"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applications/{name}/syncwindows": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Get returns sync windows of the application",
        "operationId": "ApplicationService_GetApplicationSyncWindows",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationApplicationSyncWindowsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applicationsets": {
      "get": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "List returns list of applicationset",
        "operationId": "ApplicationSetService_List",
        "parameters": [
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applicationsets.",
            "name": "projects",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the selector to restrict returned list to applications only with matched labels.",
            "name": "selector",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The application set namespace. Default empty is argocd control plane namespace.",
            "name": "appsetNamespace",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSetList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "Create creates an applicationset",
        "operationId": "ApplicationSetService_Create",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSet"
            }
          },
          {
            "type": "boolean",
            "name": "upsert",
            "in": "query"
          },
          {
            "type": "boolean",
            "name": "dryRun",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSet"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applicationsets/generate": {
      "post": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "Generate generates",
        "operationId": "ApplicationSetService_Generate",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/applicationsetApplicationSetGenerateRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationsetApplicationSetGenerateResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applicationsets/{name}": {
      "get": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "Get returns an applicationset by name",
        "operationId": "ApplicationSetService_Get",
        "parameters": [
          {
            "type": "string",
            "description": "the applicationsets's name",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "The application set namespace. Default empty is argocd control plane namespace.",
            "name": "appsetNamespace",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSet"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "Delete deletes an application set",
        "operationId": "ApplicationSetService_Delete",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "The application set namespace. Default empty is argocd control plane namespace.",
            "name": "appsetNamespace",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationsetApplicationSetResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/applicationsets/{name}/resource-tree": {
      "get": {
        "tags": [
          "ApplicationSetService"
        ],
        "summary": "ResourceTree returns resource tree",
        "operationId": "ApplicationSetService_ResourceTree",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "description": "The application set namespace. Default empty is argocd control plane namespace.",
            "name": "appsetNamespace",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ApplicationSetTree"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/certificates": {
      "get": {
        "tags": [
          "CertificateService"
        ],
        "summary": "List all available repository certificates",
        "operationId": "CertificateService_ListCertificates",
        "parameters": [
          {
            "type": "string",
            "description": "A file-glob pattern (not regular expression) the host name has to match.",
            "name": "hostNamePattern",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The type of the certificate to match (ssh or https).",
            "name": "certType",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The sub type of the certificate to match (protocol dependent, usually only used for ssh certs).",
            "name": "certSubType",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryCertificateList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "CertificateService"
        ],
        "summary": "Creates repository certificates on the server",
        "operationId": "CertificateService_CreateCertificate",
        "parameters": [
          {
            "description": "List of certificates to be created",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryCertificateList"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to upsert already existing certificates.",
            "name": "upsert",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryCertificateList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "CertificateService"
        ],
        "summary": "Delete the certificates that match the RepositoryCertificateQuery",
        "operationId": "CertificateService_DeleteCertificate",
        "parameters": [
          {
            "type": "string",
            "description": "A file-glob pattern (not regular expression) the host name has to match.",
            "name": "hostNamePattern",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The type of the certificate to match (ssh or https).",
            "name": "certType",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The sub type of the certificate to match (protocol dependent, usually only used for ssh certs).",
            "name": "certSubType",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryCertificateList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/clusters": {
      "get": {
        "tags": [
          "ClusterService"
        ],
        "summary": "List returns list of clusters",
        "operationId": "ClusterService_List",
        "parameters": [
          {
            "type": "string",
            "name": "server",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).",
            "name": "id.type",
            "in": "query"
          },
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name.",
            "name": "id.value",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1ClusterList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "ClusterService"
        ],
        "summary": "Create creates a cluster",
        "operationId": "ClusterService_Create",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          {
            "type": "boolean",
            "name": "upsert",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/clusters/{id.value}": {
      "get": {
        "tags": [
          "ClusterService"
        ],
        "summary": "Get returns a cluster by server address",
        "operationId": "ClusterService_Get",
        "parameters": [
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name",
            "name": "id.value",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "server",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).",
            "name": "id.type",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "put": {
        "tags": [
          "ClusterService"
        ],
        "summary": "Update updates a cluster",
        "operationId": "ClusterService_Update",
        "parameters": [
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name",
            "name": "id.value",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "name": "updatedFields",
            "in": "query"
          },
          {
            "type": "string",
            "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).",
            "name": "id.type",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ClusterService"
        ],
        "summary": "Delete deletes a cluster",
        "operationId": "ClusterService_Delete",
        "parameters": [
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name",
            "name": "id.value",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "server",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "description": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" ).",
            "name": "id.type",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/clusterClusterResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/clusters/{id.value}/invalidate-cache": {
      "post": {
        "tags": [
          "ClusterService"
        ],
        "summary": "InvalidateCache invalidates cluster cache",
        "operationId": "ClusterService_InvalidateCache",
        "parameters": [
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name",
            "name": "id.value",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Cluster"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/clusters/{id.value}/rotate-auth": {
      "post": {
        "tags": [
          "ClusterService"
        ],
        "summary": "RotateAuth rotates the bearer token used for a cluster",
        "operationId": "ClusterService_RotateAuth",
        "parameters": [
          {
            "type": "string",
            "description": "value holds the cluster server URL or cluster name",
            "name": "id.value",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/clusterClusterResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/gpgkeys": {
      "get": {
        "tags": [
          "GPGKeyService"
        ],
        "summary": "List all available repository certificates",
        "operationId": "GPGKeyService_List",
        "parameters": [
          {
            "type": "string",
            "description": "The GPG key ID to query for.",
            "name": "keyID",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1GnuPGPublicKeyList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "GPGKeyService"
        ],
        "summary": "Create one or more GPG public keys in the server's configuration",
        "operationId": "GPGKeyService_Create",
        "parameters": [
          {
            "description": "Raw key data of the GPG key(s) to create",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1GnuPGPublicKey"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to upsert already existing public keys.",
            "name": "upsert",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/gpgkeyGnuPGPublicKeyCreateResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "GPGKeyService"
        ],
        "summary": "Delete specified GPG public key from the server's configuration",
        "operationId": "GPGKeyService_Delete",
        "parameters": [
          {
            "type": "string",
            "description": "The GPG key ID to query for.",
            "name": "keyID",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/gpgkeyGnuPGPublicKeyResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/gpgkeys/{keyID}": {
      "get": {
        "tags": [
          "GPGKeyService"
        ],
        "summary": "Get information about specified GPG public key from the server",
        "operationId": "GPGKeyService_Get",
        "parameters": [
          {
            "type": "string",
            "description": "The GPG key ID to query for",
            "name": "keyID",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1GnuPGPublicKey"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/notifications/services": {
      "get": {
        "tags": [
          "NotificationService"
        ],
        "summary": "List returns list of services",
        "operationId": "NotificationService_ListServices",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/notificationServiceList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/notifications/templates": {
      "get": {
        "tags": [
          "NotificationService"
        ],
        "summary": "List returns list of templates",
        "operationId": "NotificationService_ListTemplates",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/notificationTemplateList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/notifications/triggers": {
      "get": {
        "tags": [
          "NotificationService"
        ],
        "summary": "List returns list of triggers",
        "operationId": "NotificationService_ListTriggers",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/notificationTriggerList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "List returns list of projects",
        "operationId": "ProjectService_List",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1AppProjectList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Create a new project",
        "operationId": "ProjectService_Create",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/projectProjectCreateRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1AppProject"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Get returns a project by name",
        "operationId": "ProjectService_Get",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1AppProject"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Delete deletes a project",
        "operationId": "ProjectService_Delete",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectEmptyResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}/detailed": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "GetDetailedProject returns a project that include project, global project and scoped resources by name",
        "operationId": "ProjectService_GetDetailedProject",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectDetailedProjectsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}/events": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "ListEvents returns a list of project events",
        "operationId": "ProjectService_ListEvents",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1EventList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}/globalprojects": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Get returns a virtual project by name",
        "operationId": "ProjectService_GetGlobalProjects",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectGlobalProjectsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}/links": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "ListLinks returns all deep links for the particular project",
        "operationId": "ProjectService_ListLinks",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/applicationLinksResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{name}/syncwindows": {
      "get": {
        "tags": [
          "ProjectService"
        ],
        "summary": "GetSchedulesState returns true if there are any active sync syncWindows",
        "operationId": "ProjectService_GetSyncWindowsState",
        "parameters": [
          {
            "type": "string",
            "name": "name",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectSyncWindowsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{project.metadata.name}": {
      "put": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Update updates a project",
        "operationId": "ProjectService_Update",
        "parameters": [
          {
            "type": "string",
            "description": "Name must be unique within a namespace. Is required when creating resources, although\nsome resources may allow a client to request the generation of an appropriate name\nautomatically. Name is primarily intended for creation idempotence and configuration\ndefinition.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names\n+optional",
            "name": "project.metadata.name",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/projectProjectUpdateRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1AppProject"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{project}/roles/{role}/token": {
      "post": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Create a new project token",
        "operationId": "ProjectService_CreateToken",
        "parameters": [
          {
            "type": "string",
            "name": "project",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "role",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/projectProjectTokenCreateRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectProjectTokenResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/projects/{project}/roles/{role}/token/{iat}": {
      "delete": {
        "tags": [
          "ProjectService"
        ],
        "summary": "Delete a new project token",
        "operationId": "ProjectService_DeleteToken",
        "parameters": [
          {
            "type": "string",
            "name": "project",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "role",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "format": "int64",
            "name": "iat",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "id",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/projectEmptyResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repocreds": {
      "get": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "ListRepositoryCredentials gets a list of all configured repository credential sets",
        "operationId": "RepoCredsService_ListRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query.",
            "name": "url",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCredsList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "CreateRepositoryCredentials creates a new repository credential set",
        "operationId": "RepoCredsService_CreateRepositoryCredentials",
        "parameters": [
          {
            "description": "Repository definition",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to create in upsert mode.",
            "name": "upsert",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repocreds/{creds.url}": {
      "put": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "UpdateRepositoryCredentials updates a repository credential set",
        "operationId": "RepoCredsService_UpdateRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "description": "URL is the URL to which these credentials match",
            "name": "creds.url",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repocreds/{url}": {
      "delete": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "DeleteRepositoryCredentials deletes a repository credential set from the configuration",
        "operationId": "RepoCredsService_DeleteRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "name": "url",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repocredsRepoCredsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "ListRepositories gets a list of all configured repositories",
        "operationId": "RepositoryService_ListRepositories",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query.",
            "name": "repo",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "CreateRepository creates a new repository configuration",
        "operationId": "RepositoryService_CreateRepository",
        "parameters": [
          {
            "description": "Repository definition",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to create in upsert mode.",
            "name": "upsert",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to operate on credential set instead of repository.",
            "name": "credsOnly",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo.repo}": {
      "put": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "UpdateRepository updates a repository configuration",
        "operationId": "RepositoryService_UpdateRepository",
        "parameters": [
          {
            "type": "string",
            "description": "Repo contains the URL to the remote repository",
            "name": "repo.repo",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "Get returns a repository or its credentials",
        "operationId": "RepositoryService_Get",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "DeleteRepository deletes a repository from the configuration",
        "operationId": "RepositoryService_DeleteRepository",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}/apps": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "ListApps returns list of apps in the repo",
        "operationId": "RepositoryService_ListApps",
        "parameters": [
          {
            "type": "string",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "revision",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appName",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoAppsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}/helmcharts": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "GetHelmCharts returns list of helm charts in the specified repository",
        "operationId": "RepositoryService_GetHelmCharts",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryHelmChartsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}/oci-tags": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "operationId": "RepositoryService_ListOCITags",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRefs"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}/refs": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "operationId": "RepositoryService_ListRefs",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRefs"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{repo}/validate": {
      "post": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "ValidateAccess validates access to a repository with given parameters",
        "operationId": "RepositoryService_ValidateAccess",
        "parameters": [
          {
            "type": "string",
            "description": "The URL to the repo",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "description": "The URL to the repo",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "type": "string",
            "description": "Username for accessing repo.",
            "name": "username",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Password for accessing repo.",
            "name": "password",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Private key data for accessing SSH repository.",
            "name": "sshPrivateKey",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to skip certificate or host key validation.",
            "name": "insecure",
            "in": "query"
          },
          {
            "type": "string",
            "description": "TLS client cert data for accessing HTTPS repository.",
            "name": "tlsClientCertData",
            "in": "query"
          },
          {
            "type": "string",
            "description": "TLS client cert key for accessing HTTPS repository.",
            "name": "tlsClientCertKey",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The type of the repo.",
            "name": "type",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The name of the repo.",
            "name": "name",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether helm-oci support should be enabled for this repo.",
            "name": "enableOci",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Github App Private Key PEM data.",
            "name": "githubAppPrivateKey",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Github App ID of the app used to access the repo.",
            "name": "githubAppID",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Github App Installation ID of the installed GitHub App.",
            "name": "githubAppInstallationID",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Github App Enterprise base url if empty will default to https://api.github.com.",
            "name": "githubAppEnterpriseBaseUrl",
            "in": "query"
          },
          {
            "type": "string",
            "description": "HTTP/HTTPS proxy to access the repository.",
            "name": "proxy",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Reference between project and repository that allow you automatically to be added as item inside SourceRepos project entity.",
            "name": "project",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Google Cloud Platform service account key.",
            "name": "gcpServiceAccountKey",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to force HTTP basic auth.",
            "name": "forceHttpBasicAuth",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to use azure workload identity for authentication.",
            "name": "useAzureWorkloadIdentity",
            "in": "query"
          },
          {
            "type": "string",
            "description": "BearerToken contains the bearer token used for Git auth at the repo server.",
            "name": "bearerToken",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether https should be disabled for an OCI repo.",
            "name": "insecureOciForceHttp",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/repositories/{source.repoURL}/appdetails": {
      "post": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "GetAppDetails returns application details by given path",
        "operationId": "RepositoryService_GetAppDetails",
        "parameters": [
          {
            "type": "string",
            "description": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests",
            "name": "source.repoURL",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/repositoryRepoAppDetailsQuery"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoAppDetailsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/session": {
      "post": {
        "tags": [
          "SessionService"
        ],
        "summary": "Create a new JWT for authentication and set a cookie if using HTTP",
        "operationId": "SessionService_Create",
        "parameters": [
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/sessionSessionCreateRequest"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/sessionSessionResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "SessionService"
        ],
        "summary": "Delete an existing JWT cookie if using HTTP",
        "operationId": "SessionService_Delete",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/sessionSessionResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/session/userinfo": {
      "get": {
        "tags": [
          "SessionService"
        ],
        "summary": "Get the current user's info",
        "operationId": "SessionService_GetUserInfo",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/sessionGetUserInfoResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/settings": {
      "get": {
        "tags": [
          "SettingsService"
        ],
        "summary": "Get returns Argo CD settings",
        "operationId": "SettingsService_Get",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/clusterSettings"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/settings/plugins": {
      "get": {
        "tags": [
          "SettingsService"
        ],
        "summary": "Get returns Argo CD plugins",
        "operationId": "SettingsService_GetPlugins",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/clusterSettingsPluginsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/stream/applications": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Watch returns stream of application change events",
        "operationId": "ApplicationService_Watch",
        "parameters": [
          {
            "type": "string",
            "description": "the application's name.",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "description": "forces application reconciliation if set to 'hard'.",
            "name": "refresh",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications.",
            "name": "projects",
            "in": "query"
          },
          {
            "type": "string",
            "description": "when specified with a watch call, shows changes that occur after that particular version of a resource.",
            "name": "resourceVersion",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the selector to restrict returned list to applications only with matched labels.",
            "name": "selector",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the repoURL to restrict returned list applications.",
            "name": "repo",
            "in": "query"
          },
          {
            "type": "string",
            "description": "the application's namespace.",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "collectionFormat": "multi",
            "description": "the project names to restrict returned list applications (legacy name for backwards-compatibility).",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.(streaming responses)",
            "schema": {
              "type": "object",
              "title": "Stream result of v1alpha1ApplicationWatchEvent",
              "properties": {
                "error": {
                  "$ref": "#/definitions/runtimeStreamError"
                },
                "result": {
                  "$ref": "#/definitions/v1alpha1ApplicationWatchEvent"
                }
              }
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/stream/applications/{applicationName}/resource-tree": {
      "get": {
        "tags": [
          "ApplicationService"
        ],
        "summary": "Watch returns stream of application resource tree",
        "operationId": "ApplicationService_WatchResourceTree",
        "parameters": [
          {
            "type": "string",
            "name": "applicationName",
            "in": "path",
            "required": true
          },
          {
            "type": "string",
            "name": "namespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "name",
            "in": "query"
          },
          {
            "type": "string",
            "name": "version",
            "in": "query"
          },
          {
            "type": "string",
            "name": "group",
            "in": "query"
          },
          {
            "type": "string",
            "name": "kind",
            "in": "query"
          },
          {
            "type": "string",
            "name": "appNamespace",
            "in": "query"
          },
          {
            "type": "string",
            "name": "project",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.(streaming responses)",
            "schema": {
              "type": "object",
              "title": "Stream result of v1alpha1ApplicationTree",
              "properties": {
                "error": {
                  "$ref": "#/definitions/runtimeStreamError"
                },
                "result": {
                  "$ref": "#/definitions/v1alpha1ApplicationTree"
                }
              }
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repocreds": {
      "get": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "ListWriteRepositoryCredentials gets a list of all configured repository credential sets that have write access",
        "operationId": "RepoCredsService_ListWriteRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query.",
            "name": "url",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCredsList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "CreateWriteRepositoryCredentials creates a new repository credential set with write access",
        "operationId": "RepoCredsService_CreateWriteRepositoryCredentials",
        "parameters": [
          {
            "description": "Repository definition",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to create in upsert mode.",
            "name": "upsert",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repocreds/{creds.url}": {
      "put": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "UpdateWriteRepositoryCredentials updates a repository credential set with write access",
        "operationId": "RepoCredsService_UpdateWriteRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "description": "URL is the URL to which these credentials match",
            "name": "creds.url",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepoCreds"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repocreds/{url}": {
      "delete": {
        "tags": [
          "RepoCredsService"
        ],
        "summary": "DeleteWriteRepositoryCredentials deletes a repository credential set with write access from the configuration",
        "operationId": "RepoCredsService_DeleteWriteRepositoryCredentials",
        "parameters": [
          {
            "type": "string",
            "name": "url",
            "in": "path",
            "required": true
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repocredsRepoCredsResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repositories": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "ListWriteRepositories gets a list of all configured write repositories",
        "operationId": "RepositoryService_ListWriteRepositories",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query.",
            "name": "repo",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1RepositoryList"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "post": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "CreateWriteRepository creates a new write repository configuration",
        "operationId": "RepositoryService_CreateWriteRepository",
        "parameters": [
          {
            "description": "Repository definition",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          {
            "type": "boolean",
            "description": "Whether to create in upsert mode.",
            "name": "upsert",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to operate on credential set instead of repository.",
            "name": "credsOnly",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repositories/{repo.repo}": {
      "put": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "UpdateWriteRepository updates a write repository configuration",
        "operationId": "RepositoryService_UpdateWriteRepository",
        "parameters": [
          {
            "type": "string",
            "description": "Repo contains the URL to the remote repository",
            "name": "repo.repo",
            "in": "path",
            "required": true
          },
          {
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repositories/{repo}": {
      "get": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "GetWrite returns a repository or its write credentials",
        "operationId": "RepositoryService_GetWrite",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/v1alpha1Repository"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      },
      "delete": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "DeleteWriteRepository deletes a write repository from the configuration",
        "operationId": "RepositoryService_DeleteWriteRepository",
        "parameters": [
          {
            "type": "string",
            "description": "Repo URL for query",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "type": "boolean",
            "description": "Whether to force a cache refresh on repo's connection state.",
            "name": "forceRefresh",
            "in": "query"
          },
          {
            "type": "string",
            "description": "App project for query.",
            "name": "appProject",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/v1/write-repositories/{repo}/validate": {
      "post": {
        "tags": [
          "RepositoryService"
        ],
        "summary": "ValidateWriteAccess validates write access to a repository with given parameters",
        "operationId": "RepositoryService_ValidateWriteAccess",
        "parameters": [
          {
            "type": "string",
            "description": "The URL to the repo",
            "name": "repo",
            "in": "path",
            "required": true
          },
          {
            "description": "The URL to the repo",
            "name": "body",
            "in": "body",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "type": "string",
            "description": "Username for accessing repo.",
            "name": "username",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Password for accessing repo.",
            "name": "password",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Private key data for accessing SSH repository.",
            "name": "sshPrivateKey",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to skip certificate or host key validation.",
            "name": "insecure",
            "in": "query"
          },
          {
            "type": "string",
            "description": "TLS client cert data for accessing HTTPS repository.",
            "name": "tlsClientCertData",
            "in": "query"
          },
          {
            "type": "string",
            "description": "TLS client cert key for accessing HTTPS repository.",
            "name": "tlsClientCertKey",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The type of the repo.",
            "name": "type",
            "in": "query"
          },
          {
            "type": "string",
            "description": "The name of the repo.",
            "name": "name",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether helm-oci support should be enabled for this repo.",
            "name": "enableOci",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Github App Private Key PEM data.",
            "name": "githubAppPrivateKey",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Github App ID of the app used to access the repo.",
            "name": "githubAppID",
            "in": "query"
          },
          {
            "type": "string",
            "format": "int64",
            "description": "Github App Installation ID of the installed GitHub App.",
            "name": "githubAppInstallationID",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Github App Enterprise base url if empty will default to https://api.github.com.",
            "name": "githubAppEnterpriseBaseUrl",
            "in": "query"
          },
          {
            "type": "string",
            "description": "HTTP/HTTPS proxy to access the repository.",
            "name": "proxy",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Reference between project and repository that allow you automatically to be added as item inside SourceRepos project entity.",
            "name": "project",
            "in": "query"
          },
          {
            "type": "string",
            "description": "Google Cloud Platform service account key.",
            "name": "gcpServiceAccountKey",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to force HTTP basic auth.",
            "name": "forceHttpBasicAuth",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether to use azure workload identity for authentication.",
            "name": "useAzureWorkloadIdentity",
            "in": "query"
          },
          {
            "type": "string",
            "description": "BearerToken contains the bearer token used for Git auth at the repo server.",
            "name": "bearerToken",
            "in": "query"
          },
          {
            "type": "boolean",
            "description": "Whether https should be disabled for an OCI repo.",
            "name": "insecureOciForceHttp",
            "in": "query"
          }
        ],
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/repositoryRepoResponse"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    },
    "/api/version": {
      "get": {
        "tags": [
          "VersionService"
        ],
        "summary": "Version returns version information of the API server",
        "operationId": "VersionService_Version",
        "responses": {
          "200": {
            "description": "A successful response.",
            "schema": {
              "$ref": "#/definitions/versionVersionMessage"
            }
          },
          "default": {
            "description": "An unexpected error response.",
            "schema": {
              "$ref": "#/definitions/runtimeError"
            }
          }
        }
      }
    }
  },
  "definitions": {
    "accountAccount": {
      "type": "object",
      "properties": {
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enabled": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "tokens": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/accountToken"
          }
        }
      }
    },
    "accountAccountsList": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/accountAccount"
          }
        }
      }
    },
    "accountCanIResponse": {
      "type": "object",
      "properties": {
        "value": {
          "type": "string"
        }
      }
    },
    "accountCreateTokenRequest": {
      "type": "object",
      "properties": {
        "expiresIn": {
          "type": "integer",
          "format": "int64",
          "title": "expiresIn represents a duration in seconds"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "accountCreateTokenResponse": {
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        }
      }
    },
    "accountEmptyResponse": {
      "type": "object"
    },
    "accountToken": {
      "type": "object",
      "properties": {
        "expiresAt": {
          "type": "integer",
          "format": "int64"
        },
        "id": {
          "type": "string"
        },
        "issuedAt": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "accountUpdatePasswordRequest": {
      "type": "object",
      "properties": {
        "currentPassword": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "newPassword": {
          "type": "string"
        }
      }
    },
    "accountUpdatePasswordResponse": {
      "type": "object"
    },
    "applicationApplicationManifestQueryWithFiles": {
      "type": "object",
      "properties": {
        "appNamespace": {
          "type": "string"
        },
        "checksum": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "project": {
          "type": "string"
        }
      }
    },
    "applicationApplicationManifestQueryWithFilesWrapper": {
      "type": "object",
      "properties": {
        "chunk": {
          "$ref": "#/definitions/applicationFileChunk"
        },
        "query": {
          "$ref": "#/definitions/applicationApplicationManifestQueryWithFiles"
        }
      }
    },
    "applicationApplicationPatchRequest": {
      "type": "object",
      "title": "ApplicationPatchRequest is a request to patch an application",
      "properties": {
        "appNamespace": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "patch": {
          "type": "string"
        },
        "patchType": {
          "type": "string"
        },
        "project": {
          "type": "string"
        }
      }
    },
    "applicationApplicationResourceResponse": {
      "type": "object",
      "properties": {
        "manifest": {
          "type": "string"
        }
      }
    },
    "applicationApplicationResponse": {
      "type": "object"
    },
    "applicationApplicationRollbackRequest": {
      "type": "object",
      "properties": {
        "appNamespace": {
          "type": "string"
        },
        "dryRun": {
          "type": "boolean"
        },
        "id": {
          "type": "integer",
          "format": "int64"
        },
        "name": {
          "type": "string"
        },
        "project": {
          "type": "string"
        },
        "prune": {
          "type": "boolean"
        }
      }
    },
    "applicationApplicationServerSideDiffResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceDiff"
          }
        },
        "modified": {
          "type": "boolean"
        }
      }
    },
    "applicationApplicationSyncRequest": {
      "type": "object",
      "title": "ApplicationSyncRequest is a request to apply the config state to live state",
      "properties": {
        "appNamespace": {
          "type": "string"
        },
        "dryRun": {
          "type": "boolean"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Info"
          }
        },
        "manifests": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "project": {
          "type": "string"
        },
        "prune": {
          "type": "boolean"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1SyncOperationResource"
          }
        },
        "retryStrategy": {
          "$ref": "#/definitions/v1alpha1RetryStrategy"
        },
        "revision": {
          "type": "string"
        },
        "revisions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "sourcePositions": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "int64"
          }
        },
        "strategy": {
          "$ref": "#/definitions/v1alpha1SyncStrategy"
        },
        "syncOptions": {
          "$ref": "#/definitions/applicationSyncOptions"
        }
      }
    },
    "applicationApplicationSyncWindow": {
      "type": "object",
      "properties": {
        "duration": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "manualSync": {
          "type": "boolean"
        },
        "schedule": {
          "type": "string"
        }
      }
    },
    "applicationApplicationSyncWindowsResponse": {
      "type": "object",
      "properties": {
        "activeWindows": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationApplicationSyncWindow"
          }
        },
        "assignedWindows": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationApplicationSyncWindow"
          }
        },
        "canSync": {
          "type": "boolean"
        }
      }
    },
    "applicationFileChunk": {
      "type": "object",
      "properties": {
        "chunk": {
          "type": "string",
          "format": "byte"
        }
      }
    },
    "applicationLinkInfo": {
      "type": "object",
      "properties": {
        "description": {
          "type": "string"
        },
        "iconClass": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      }
    },
    "applicationLinksResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationLinkInfo"
          }
        }
      }
    },
    "applicationLogEntry": {
      "type": "object",
      "properties": {
        "content": {
          "type": "string"
        },
        "last": {
          "type": "boolean"
        },
        "podName": {
          "type": "string"
        },
        "timeStamp": {
          "$ref": "#/definitions/v1Time"
        },
        "timeStampStr": {
          "type": "string"
        }
      }
    },
    "applicationManagedResourcesResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceDiff"
          }
        }
      }
    },
    "applicationOperationTerminateResponse": {
      "type": "object"
    },
    "applicationResourceActionParameters": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      }
    },
    "applicationResourceActionRunRequestV2": {
      "type": "object",
      "properties": {
        "action": {
          "type": "string"
        },
        "appNamespace": {
          "type": "string"
        },
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        },
        "project": {
          "type": "string"
        },
        "resourceActionParameters": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationResourceActionParameters"
          }
        },
        "resourceName": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      }
    },
    "applicationResourceActionsListResponse": {
      "type": "object",
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceAction"
          }
        }
      }
    },
    "applicationSyncOptions": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "applicationsetApplicationSetGenerateRequest": {
      "type": "object",
      "title": "ApplicationSetGetQuery is a query for applicationset resources",
      "properties": {
        "applicationSet": {
          "$ref": "#/definitions/v1alpha1ApplicationSet"
        }
      }
    },
    "applicationsetApplicationSetGenerateResponse": {
      "type": "object",
      "title": "ApplicationSetGenerateResponse is a response for applicationset generate request",
      "properties": {
        "applications": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Application"
          }
        }
      }
    },
    "applicationsetApplicationSetResponse": {
      "type": "object",
      "properties": {
        "applicationset": {
          "$ref": "#/definitions/v1alpha1ApplicationSet"
        },
        "project": {
          "type": "string"
        }
      }
    },
    "applicationv1alpha1EnvEntry": {
      "type": "object",
      "title": "EnvEntry represents an entry in the application's environment",
      "properties": {
        "name": {
          "type": "string",
          "title": "Name is the name of the variable, usually expressed in uppercase"
        },
        "value": {
          "type": "string",
          "title": "Value is the value of the variable"
        }
      }
    },
    "applicationv1alpha1ResourceStatus": {
      "description": "ResourceStatus holds the current synchronization and health status of a Kubernetes resource.",
      "type": "object",
      "properties": {
        "group": {
          "description": "Group represents the API group of the resource (e.g., \"apps\" for Deployments).",
          "type": "string"
        },
        "health": {
          "$ref": "#/definitions/v1alpha1HealthStatus"
        },
        "hook": {
          "description": "Hook is true if the resource is used as a lifecycle hook in an Argo CD application.",
          "type": "boolean"
        },
        "kind": {
          "description": "Kind specifies the type of the resource (e.g., \"Deployment\", \"Service\").",
          "type": "string"
        },
        "name": {
          "description": "Name is the unique name of the resource within the namespace.",
          "type": "string"
        },
        "namespace": {
          "description": "Namespace defines the Kubernetes namespace where the resource is located.",
          "type": "string"
        },
        "requiresDeletionConfirmation": {
          "description": "RequiresDeletionConfirmation is true if the resource requires explicit user confirmation before deletion.",
          "type": "boolean"
        },
        "requiresPruning": {
          "description": "RequiresPruning is true if the resource needs to be pruned (deleted) as part of synchronization.",
          "type": "boolean"
        },
        "status": {
          "description": "Status represents the synchronization state of the resource (e.g., Synced, OutOfSync).",
          "type": "string"
        },
        "syncWave": {
          "description": "SyncWave determines the order in which resources are applied during a sync operation.\nLower values are applied first.",
          "type": "integer",
          "format": "int64"
        },
        "version": {
          "description": "Version indicates the API version of the resource (e.g., \"v1\", \"v1beta1\").",
          "type": "string"
        }
      }
    },
    "clusterClusterID": {
      "type": "object",
      "title": "ClusterID holds a cluster server URL or cluster name",
      "properties": {
        "type": {
          "type": "string",
          "title": "type is the type of the specified cluster identifier ( \"server\" - default, \"name\" )"
        },
        "value": {
          "type": "string",
          "title": "value holds the cluster server URL or cluster name"
        }
      }
    },
    "clusterClusterResponse": {
      "type": "object"
    },
    "clusterConnector": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "clusterDexConfig": {
      "type": "object",
      "properties": {
        "connectors": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/clusterConnector"
          }
        }
      }
    },
    "clusterGoogleAnalyticsConfig": {
      "type": "object",
      "properties": {
        "anonymizeUsers": {
          "type": "boolean"
        },
        "trackingID": {
          "type": "string"
        }
      }
    },
    "clusterHelp": {
      "type": "object",
      "title": "Help settings",
      "properties": {
        "binaryUrls": {
          "type": "object",
          "title": "the URLs for downloading argocd binaries",
          "additionalProperties": {
            "type": "string"
          }
        },
        "chatText": {
          "type": "string",
          "title": "the text for getting chat help, defaults to \"Chat now!\""
        },
        "chatUrl": {
          "type": "string",
          "title": "the URL for getting chat help, this will typically be your Slack channel for support"
        }
      }
    },
    "clusterOIDCConfig": {
      "type": "object",
      "properties": {
        "cliClientID": {
          "type": "string"
        },
        "clientID": {
          "type": "string"
        },
        "enablePKCEAuthentication": {
          "type": "boolean"
        },
        "idTokenClaims": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/oidcClaim"
          }
        },
        "issuer": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "clusterPlugin": {
      "type": "object",
      "title": "Plugin settings",
      "properties": {
        "name": {
          "type": "string",
          "title": "the name of the plugin, e.g. \"kasane\""
        }
      }
    },
    "clusterSettings": {
      "type": "object",
      "properties": {
        "additionalUrls": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "appLabelKey": {
          "type": "string"
        },
        "appsInAnyNamespaceEnabled": {
          "type": "boolean"
        },
        "configManagementPlugins": {
          "description": "Deprecated: use sidecar plugins instead.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ConfigManagementPlugin"
          }
        },
        "controllerNamespace": {
          "type": "string"
        },
        "dexConfig": {
          "$ref": "#/definitions/clusterDexConfig"
        },
        "execEnabled": {
          "type": "boolean"
        },
        "googleAnalytics": {
          "$ref": "#/definitions/clusterGoogleAnalyticsConfig"
        },
        "help": {
          "$ref": "#/definitions/clusterHelp"
        },
        "hydratorEnabled": {
          "type": "boolean"
        },
        "impersonationEnabled": {
          "type": "boolean"
        },
        "installationID": {
          "type": "string"
        },
        "kustomizeOptions": {
          "$ref": "#/definitions/v1alpha1KustomizeOptions"
        },
        "kustomizeVersions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "oidcConfig": {
          "$ref": "#/definitions/clusterOIDCConfig"
        },
        "passwordPattern": {
          "type": "string"
        },
        "plugins": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/clusterPlugin"
          }
        },
        "resourceOverrides": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/v1alpha1ResourceOverride"
          }
        },
        "statusBadgeEnabled": {
          "type": "boolean"
        },
        "statusBadgeRootUrl": {
          "type": "string"
        },
        "trackingMethod": {
          "type": "string"
        },
        "uiBannerContent": {
          "type": "string"
        },
        "uiBannerPermanent": {
          "type": "boolean"
        },
        "uiBannerPosition": {
          "type": "string"
        },
        "uiBannerURL": {
          "type": "string"
        },
        "uiCssURL": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "userLoginsDisabled": {
          "type": "boolean"
        }
      }
    },
    "clusterSettingsPluginsResponse": {
      "type": "object",
      "properties": {
        "plugins": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/clusterPlugin"
          }
        }
      }
    },
    "gpgkeyGnuPGPublicKeyCreateResponse": {
      "type": "object",
      "title": "Response to a public key creation request",
      "properties": {
        "created": {
          "$ref": "#/definitions/v1alpha1GnuPGPublicKeyList"
        },
        "skipped": {
          "type": "array",
          "title": "List of key IDs that haven been skipped because they already exist on the server",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "gpgkeyGnuPGPublicKeyResponse": {
      "type": "object",
      "title": "Generic (empty) response for GPG public key CRUD requests"
    },
    "intstrIntOrString": {
      "description": "+protobuf=true\n+protobuf.options.(gogoproto.goproto_stringer)=false\n+k8s:openapi-gen=true",
      "type": "object",
      "title": "IntOrString is a type that can hold an int32 or a string.  When used in\nJSON or YAML marshalling and unmarshalling, it produces or consumes the\ninner type.  This allows you to have, for example, a JSON field that can\naccept a name or number.\nTODO: Rename to Int32OrString",
      "properties": {
        "intVal": {
          "type": "integer",
          "format": "int32"
        },
        "strVal": {
          "type": "string"
        },
        "type": {
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "notificationService": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        }
      }
    },
    "notificationServiceList": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/notificationService"
          }
        }
      }
    },
    "notificationTemplate": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        }
      }
    },
    "notificationTemplateList": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/notificationTemplate"
          }
        }
      }
    },
    "notificationTrigger": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        }
      }
    },
    "notificationTriggerList": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/notificationTrigger"
          }
        }
      }
    },
    "oidcClaim": {
      "type": "object",
      "properties": {
        "essential": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "projectDetailedProjectsResponse": {
      "type": "object",
      "properties": {
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Cluster"
          }
        },
        "globalProjects": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1AppProject"
          }
        },
        "project": {
          "$ref": "#/definitions/v1alpha1AppProject"
        },
        "repositories": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Repository"
          }
        }
      }
    },
    "projectEmptyResponse": {
      "type": "object"
    },
    "projectGlobalProjectsResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1AppProject"
          }
        }
      }
    },
    "projectProjectCreateRequest": {
      "description": "ProjectCreateRequest defines project creation parameters.",
      "type": "object",
      "properties": {
        "project": {
          "$ref": "#/definitions/v1alpha1AppProject"
        },
        "upsert": {
          "type": "boolean"
        }
      }
    },
    "projectProjectTokenCreateRequest": {
      "description": "ProjectTokenCreateRequest defines project token creation parameters.",
      "type": "object",
      "properties": {
        "description": {
          "type": "string"
        },
        "expiresIn": {
          "type": "integer",
          "format": "int64",
          "title": "expiresIn represents a duration in seconds"
        },
        "id": {
          "type": "string"
        },
        "project": {
          "type": "string"
        },
        "role": {
          "type": "string"
        }
      }
    },
    "projectProjectTokenResponse": {
      "description": "ProjectTokenResponse wraps the created token or returns an empty string if deleted.",
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        }
      }
    },
    "projectProjectUpdateRequest": {
      "type": "object",
      "properties": {
        "project": {
          "$ref": "#/definitions/v1alpha1AppProject"
        }
      }
    },
    "projectSyncWindowsResponse": {
      "type": "object",
      "properties": {
        "windows": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1SyncWindow"
          }
        }
      }
    },
    "protobufAny": {
      "type": "object",
      "properties": {
        "type_url": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "format": "byte"
        }
      }
    },
    "repocredsRepoCredsResponse": {
      "type": "object",
      "title": "RepoCredsResponse is a response to most repository credentials requests"
    },
    "repositoryAppInfo": {
      "type": "object",
      "title": "AppInfo contains application type and app file path",
      "properties": {
        "path": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "repositoryDirectoryAppSpec": {
      "type": "object",
      "title": "DirectoryAppSpec contains directory"
    },
    "repositoryHelmAppSpec": {
      "type": "object",
      "title": "HelmAppSpec contains helm app name  in source repo",
      "properties": {
        "fileParameters": {
          "type": "array",
          "title": "helm file parameters",
          "items": {
            "$ref": "#/definitions/v1alpha1HelmFileParameter"
          }
        },
        "name": {
          "type": "string"
        },
        "parameters": {
          "type": "array",
          "title": "the output of `helm inspect values`",
          "items": {
            "$ref": "#/definitions/v1alpha1HelmParameter"
          }
        },
        "valueFiles": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "values": {
          "type": "string",
          "title": "the contents of values.yaml"
        }
      }
    },
    "repositoryHelmChart": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "versions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "repositoryHelmChartsResponse": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/repositoryHelmChart"
          }
        }
      }
    },
    "repositoryKustomizeAppSpec": {
      "type": "object",
      "title": "KustomizeAppSpec contains kustomize images",
      "properties": {
        "images": {
          "description": "images is a list of available images.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "repositoryManifestResponse": {
      "type": "object",
      "properties": {
        "commands": {
          "type": "array",
          "title": "Commands is the list of commands used to hydrate the manifests",
          "items": {
            "type": "string"
          }
        },
        "manifests": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "namespace": {
          "type": "string"
        },
        "revision": {
          "type": "string",
          "title": "resolved revision"
        },
        "server": {
          "type": "string"
        },
        "sourceType": {
          "type": "string"
        },
        "verifyResult": {
          "type": "string",
          "title": "Raw response of git verify-commit operation (always the empty string for Helm)"
        }
      }
    },
    "repositoryParameterAnnouncement": {
      "type": "object",
      "properties": {
        "array": {
          "description": "array is the default value of the parameter if the parameter is an array.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "collectionType": {
          "description": "collectionType is the type of value this parameter holds - either a single value (a string) or a collection\n(array or map). If collectionType is set, only the field with that type will be used. If collectionType is not\nset, `string` is the default. If collectionType is set to an invalid value, a validation error is thrown.",
          "type": "string"
        },
        "itemType": {
          "description": "itemType determines the primitive data type represented by the parameter. Parameters are always encoded as\nstrings, but this field lets them be interpreted as other primitive types.",
          "type": "string"
        },
        "map": {
          "description": "map is the default value of the parameter if the parameter is a map.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "description": "name is the name identifying a parameter.",
          "type": "string"
        },
        "required": {
          "description": "required defines if this given parameter is mandatory.",
          "type": "boolean"
        },
        "string": {
          "description": "string is the default value of the parameter if the parameter is a string.",
          "type": "string"
        },
        "title": {
          "description": "title is a human-readable text of the parameter name.",
          "type": "string"
        },
        "tooltip": {
          "description": "tooltip is a human-readable description of the parameter.",
          "type": "string"
        }
      }
    },
    "repositoryPluginAppSpec": {
      "type": "object",
      "title": "PluginAppSpec contains details about a plugin-type Application",
      "properties": {
        "parametersAnnouncement": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/repositoryParameterAnnouncement"
          }
        }
      }
    },
    "repositoryRefs": {
      "type": "object",
      "title": "A subset of the repository's named refs",
      "properties": {
        "branches": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "repositoryRepoAppDetailsQuery": {
      "type": "object",
      "title": "RepoAppDetailsQuery contains query information for app details request",
      "properties": {
        "appName": {
          "type": "string"
        },
        "appProject": {
          "type": "string"
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sourceIndex": {
          "type": "integer",
          "format": "int32",
          "title": "source index (for multi source apps)"
        },
        "versionId": {
          "type": "integer",
          "format": "int32",
          "title": "versionId from historical data (for multi source apps)"
        }
      }
    },
    "repositoryRepoAppDetailsResponse": {
      "type": "object",
      "title": "RepoAppDetailsResponse application details",
      "properties": {
        "directory": {
          "$ref": "#/definitions/repositoryDirectoryAppSpec"
        },
        "helm": {
          "$ref": "#/definitions/repositoryHelmAppSpec"
        },
        "kustomize": {
          "$ref": "#/definitions/repositoryKustomizeAppSpec"
        },
        "plugin": {
          "$ref": "#/definitions/repositoryPluginAppSpec"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "repositoryRepoAppsResponse": {
      "type": "object",
      "title": "RepoAppsResponse contains applications of specified repository",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/repositoryAppInfo"
          }
        }
      }
    },
    "repositoryRepoResponse": {
      "type": "object"
    },
    "runtimeError": {
      "type": "object",
      "properties": {
        "code": {
          "type": "integer",
          "format": "int32"
        },
        "details": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/protobufAny"
          }
        },
        "error": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "runtimeRawExtension": {
      "description": "RawExtension is used to hold extensions in external versions.\n\nTo use this, make a field which has RawExtension as its type in your external, versioned\nstruct, and Object in your internal struct. You also need to register your\nvarious plugin types.\n\n// Internal package:\n\n\ttype MyAPIObject struct {\n\t\truntime.TypeMeta `json:\",inline\"`\n\t\tMyPlugin runtime.Object `json:\"myPlugin\"`\n\t}\n\n\ttype PluginA struct {\n\t\tAOption string `json:\"aOption\"`\n\t}\n\n// External package:\n\n\ttype MyAPIObject struct {\n\t\truntime.TypeMeta `json:\",inline\"`\n\t\tMyPlugin runtime.RawExtension `json:\"myPlugin\"`\n\t}\n\n\ttype PluginA struct {\n\t\tAOption string `json:\"aOption\"`\n\t}\n\n// On the wire, the JSON will look something like this:\n\n\t{\n\t\t\"kind\":\"MyAPIObject\",\n\t\t\"apiVersion\":\"v1\",\n\t\t\"myPlugin\": {\n\t\t\t\"kind\":\"PluginA\",\n\t\t\t\"aOption\":\"foo\",\n\t\t},\n\t}\n\nSo what happens? Decode first uses json or yaml to unmarshal the serialized data into\nyour external MyAPIObject. That causes the raw JSON to be stored, but not unpacked.\nThe next step is to copy (using pkg/conversion) into the internal struct. The runtime\npackage's DefaultScheme has conversion functions installed which will unpack the\nJSON stored in RawExtension, turning it into the correct object type, and storing it\nin the Object. (TODO: In the case where the object is of an unknown type, a\nruntime.Unknown object will be created and stored.)\n\n+k8s:deepcopy-gen=true\n+protobuf=true\n+k8s:openapi-gen=true",
      "type": "object",
      "properties": {
        "raw": {
          "description": "Raw is the underlying serialization of this object.\n\nTODO: Determine how to detect ContentType and ContentEncoding of 'Raw' data.",
          "type": "string",
          "format": "byte"
        }
      }
    },
    "runtimeStreamError": {
      "type": "object",
      "properties": {
        "details": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/protobufAny"
          }
        },
        "grpc_code": {
          "type": "integer",
          "format": "int32"
        },
        "http_code": {
          "type": "integer",
          "format": "int32"
        },
        "http_status": {
          "type": "string"
        },
        "message": {
          "type": "string"
        }
      }
    },
    "sessionGetUserInfoResponse": {
      "type": "object",
      "title": "The current user's userInfo info",
      "properties": {
        "groups": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "iss": {
          "type": "string"
        },
        "loggedIn": {
          "type": "boolean"
        },
        "username": {
          "type": "string"
        }
      }
    },
    "sessionSessionCreateRequest": {
      "description": "SessionCreateRequest is for logging in.",
      "type": "object",
      "properties": {
        "password": {
          "type": "string"
        },
        "token": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      }
    },
    "sessionSessionResponse": {
      "description": "SessionResponse wraps the created token or returns an empty string if deleted.",
      "type": "object",
      "properties": {
        "token": {
          "type": "string"
        }
      }
    },
    "v1Event": {
      "description": "Event is a report of an event somewhere in the cluster.  Events\nhave a limited retention time and triggers and messages may evolve\nwith time.  Event consumers should not rely on the timing of an event\nwith a given Reason reflecting a consistent underlying trigger, or the\ncontinued existence of events with that Reason.  Events should be\ntreated as informative, best-effort, supplemental data.",
      "type": "object",
      "properties": {
        "action": {
          "type": "string",
          "title": "What action was taken/failed regarding to the Regarding object.\n+optional"
        },
        "count": {
          "type": "integer",
          "format": "int32",
          "title": "The number of times this event has occurred.\n+optional"
        },
        "eventTime": {
          "$ref": "#/definitions/v1MicroTime"
        },
        "firstTimestamp": {
          "$ref": "#/definitions/v1Time"
        },
        "involvedObject": {
          "$ref": "#/definitions/v1ObjectReference"
        },
        "lastTimestamp": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "type": "string",
          "title": "A human-readable description of the status of this operation.\nTODO: decide on maximum length.\n+optional"
        },
        "metadata": {
          "$ref": "#/definitions/v1ObjectMeta"
        },
        "reason": {
          "type": "string",
          "title": "This should be a short, machine understandable string that gives the reason\nfor the transition into the object's current status.\nTODO: provide exact specification for format.\n+optional"
        },
        "related": {
          "$ref": "#/definitions/v1ObjectReference"
        },
        "reportingComponent": {
          "type": "string",
          "title": "Name of the controller that emitted this Event, e.g. `kubernetes.io/kubelet`.\n+optional"
        },
        "reportingInstance": {
          "type": "string",
          "title": "ID of the controller instance, e.g. `kubelet-xyzf`.\n+optional"
        },
        "series": {
          "$ref": "#/definitions/v1EventSeries"
        },
        "source": {
          "$ref": "#/definitions/v1EventSource"
        },
        "type": {
          "type": "string",
          "title": "Type of this event (Normal, Warning), new types could be added in the future\n+optional"
        }
      }
    },
    "v1EventList": {
      "description": "EventList is a list of events.",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "title": "List of events",
          "items": {
            "$ref": "#/definitions/v1Event"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1EventSeries": {
      "description": "EventSeries contain information on series of events, i.e. thing that was/is happening\ncontinuously for some time.",
      "type": "object",
      "properties": {
        "count": {
          "type": "integer",
          "format": "int32",
          "title": "Number of occurrences in this series up to the last heartbeat time"
        },
        "lastObservedTime": {
          "$ref": "#/definitions/v1MicroTime"
        }
      }
    },
    "v1EventSource": {
      "description": "EventSource contains information for an event.",
      "type": "object",
      "properties": {
        "component": {
          "type": "string",
          "title": "Component from which the event is generated.\n+optional"
        },
        "host": {
          "type": "string",
          "title": "Node name on which the event is generated.\n+optional"
        }
      }
    },
    "v1FieldsV1": {
      "description": "FieldsV1 stores a set of fields in a data structure like a Trie, in JSON format.\n\nEach key is either a '.' representing the field itself, and will always map to an empty set,\nor a string representing a sub-field or item. The string will follow one of these four formats:\n'f:<name>', where <name> is the name of a field in a struct, or key in a map\n'v:<value>', where <value> is the exact json formatted value of a list item\n'i:<index>', where <index> is position of a item in a list\n'k:<keys>', where <keys> is a map of  a list item's key fields to their unique values\nIf a key maps to an empty Fields value, the field that key represents is part of the set.\n\nThe exact format is defined in sigs.k8s.io/structured-merge-diff\n+protobuf.options.(gogoproto.goproto_stringer)=false",
      "type": "object",
      "properties": {
        "Raw": {
          "description": "Raw is the underlying serialization of this object.",
          "type": "string",
          "format": "byte"
        }
      }
    },
    "v1GroupKind": {
      "description": "+protobuf.options.(gogoproto.goproto_stringer)=false",
      "type": "object",
      "title": "GroupKind specifies a Group and a Kind, but does not force a version.  This is useful for identifying\nconcepts during lookup stages without having partially valid types",
      "properties": {
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        }
      }
    },
    "v1JSON": {
      "description": "JSON represents any valid JSON value.\nThese types are supported: bool, int64, float64, string, []interface{}, map[string]interface{} and nil.",
      "type": "object",
      "properties": {
        "raw": {
          "type": "string",
          "format": "byte"
        }
      }
    },
    "v1LabelSelector": {
      "type": "object",
      "title": "A label selector is a label query over a set of resources. The result of matchLabels and\nmatchExpressions are ANDed. An empty label selector matches all objects. A null\nlabel selector matches no objects.\n+structType=atomic",
      "properties": {
        "matchExpressions": {
          "type": "array",
          "title": "matchExpressions is a list of label selector requirements. The requirements are ANDed.\n+optional\n+listType=atomic",
          "items": {
            "$ref": "#/definitions/v1LabelSelectorRequirement"
          }
        },
        "matchLabels": {
          "type": "object",
          "title": "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels\nmap is equivalent to an element of matchExpressions, whose key field is \"key\", the\noperator is \"In\", and the values array contains only \"value\". The requirements are ANDed.\n+optional",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1LabelSelectorRequirement": {
      "description": "A label selector requirement is a selector that contains values, a key, and an operator that\nrelates the key and values.",
      "type": "object",
      "properties": {
        "key": {
          "description": "key is the label key that the selector applies to.",
          "type": "string"
        },
        "operator": {
          "description": "operator represents a key's relationship to a set of values.\nValid operators are In, NotIn, Exists and DoesNotExist.",
          "type": "string"
        },
        "values": {
          "type": "array",
          "title": "values is an array of string values. If the operator is In or NotIn,\nthe values array must be non-empty. If the operator is Exists or DoesNotExist,\nthe values array must be empty. This array is replaced during a strategic\nmerge patch.\n+optional\n+listType=atomic",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1ListMeta": {
      "description": "ListMeta describes metadata that synthetic resources must have, including lists and\nvarious status objects. A resource may have only one of {ObjectMeta, ListMeta}.",
      "type": "object",
      "properties": {
        "continue": {
          "description": "continue may be set if the user set a limit on the number of items returned, and indicates that\nthe server has more data available. The value is opaque and may be used to issue another request\nto the endpoint that served this list to retrieve the next set of available objects. Continuing a\nconsistent list may not be possible if the server configuration has changed or more than a few\nminutes have passed. The resourceVersion field returned when using this continue value will be\nidentical to the value in the first response, unless you have received this token from an error\nmessage.",
          "type": "string"
        },
        "remainingItemCount": {
          "type": "integer",
          "format": "int64",
          "title": "remainingItemCount is the number of subsequent items in the list which are not included in this\nlist response. If the list request contained label or field selectors, then the number of\nremaining items is unknown and the field will be left unset and omitted during serialization.\nIf the list is complete (either because it is not chunking or because this is the last chunk),\nthen there are no more remaining items and this field will be left unset and omitted during\nserialization.\nServers older than v1.15 do not set this field.\nThe intended use of the remainingItemCount is *estimating* the size of a collection. Clients\nshould not rely on the remainingItemCount to be set or to be exact.\n+optional"
        },
        "resourceVersion": {
          "type": "string",
          "title": "String that identifies the server's internal version of this object that\ncan be used by clients to determine when objects have changed.\nValue must be treated as opaque by clients and passed unmodified back to the server.\nPopulated by the system.\nRead-only.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency\n+optional"
        },
        "selfLink": {
          "type": "string",
          "title": "Deprecated: selfLink is a legacy read-only field that is no longer populated by the system.\n+optional"
        }
      }
    },
    "v1LoadBalancerIngress": {
      "description": "LoadBalancerIngress represents the status of a load-balancer ingress point:\ntraffic intended for the service should be sent to an ingress point.",
      "type": "object",
      "properties": {
        "hostname": {
          "type": "string",
          "title": "Hostname is set for load-balancer ingress points that are DNS based\n(typically AWS load-balancers)\n+optional"
        },
        "ip": {
          "type": "string",
          "title": "IP is set for load-balancer ingress points that are IP based\n(typically GCE or OpenStack load-balancers)\n+optional"
        },
        "ipMode": {
          "type": "string",
          "title": "IPMode specifies how the load-balancer IP behaves, and may only be specified when the ip field is specified.\nSetting this to \"VIP\" indicates that traffic is delivered to the node with\nthe destination set to the load-balancer's IP and port.\nSetting this to \"Proxy\" indicates that traffic is delivered to the node or pod with\nthe destination set to the node's IP and node port or the pod's IP and port.\nService implementations may use this information to adjust traffic routing.\n+optional"
        },
        "ports": {
          "type": "array",
          "title": "Ports is a list of records of service ports\nIf used, every port defined in the service should have an entry in it\n+listType=atomic\n+optional",
          "items": {
            "$ref": "#/definitions/v1PortStatus"
          }
        }
      }
    },
    "v1ManagedFieldsEntry": {
      "description": "ManagedFieldsEntry is a workflow-id, a FieldSet and the group version of the resource\nthat the fieldset applies to.",
      "type": "object",
      "properties": {
        "apiVersion": {
          "description": "APIVersion defines the version of this resource that this field set\napplies to. The format is \"group/version\" just like the top-level\nAPIVersion field. It is necessary to track the version of a field\nset because it cannot be automatically converted.",
          "type": "string"
        },
        "fieldsType": {
          "type": "string",
          "title": "FieldsType is the discriminator for the different fields format and version.\nThere is currently only one possible value: \"FieldsV1\""
        },
        "fieldsV1": {
          "$ref": "#/definitions/v1FieldsV1"
        },
        "manager": {
          "description": "Manager is an identifier of the workflow managing these fields.",
          "type": "string"
        },
        "operation": {
          "description": "Operation is the type of operation which lead to this ManagedFieldsEntry being created.\nThe only valid values for this field are 'Apply' and 'Update'.",
          "type": "string"
        },
        "subresource": {
          "description": "Subresource is the name of the subresource used to update that object, or\nempty string if the object was updated through the main resource. The\nvalue of this field is used to distinguish between managers, even if they\nshare the same name. For example, a status update will be distinct from a\nregular update using the same manager name.\nNote that the APIVersion field is not related to the Subresource field and\nit always corresponds to the version of the main resource.",
          "type": "string"
        },
        "time": {
          "$ref": "#/definitions/v1Time"
        }
      }
    },
    "v1MicroTime": {
      "description": "MicroTime is version of Time with microsecond level precision.\n\n+protobuf.options.marshal=false\n+protobuf.as=Timestamp\n+protobuf.options.(gogoproto.goproto_stringer)=false",
      "type": "object",
      "properties": {
        "nanos": {
          "description": "Non-negative fractions of a second at nanosecond resolution. Negative\nsecond values with fractions must still have non-negative nanos values\nthat count forward in time. Must be from 0 to 999,999,999\ninclusive. This field may be limited in precision depending on context.",
          "type": "integer",
          "format": "int32"
        },
        "seconds": {
          "description": "Represents seconds of UTC time since Unix epoch\n1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to\n9999-12-31T23:59:59Z inclusive.",
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "v1NodeSwapStatus": {
      "description": "NodeSwapStatus represents swap memory information.",
      "type": "object",
      "properties": {
        "capacity": {
          "type": "integer",
          "format": "int64",
          "title": "Total amount of swap memory in bytes.\n+optional"
        }
      }
    },
    "v1NodeSystemInfo": {
      "description": "NodeSystemInfo is a set of ids/uuids to uniquely identify the node.",
      "type": "object",
      "properties": {
        "architecture": {
          "type": "string",
          "title": "The Architecture reported by the node"
        },
        "bootID": {
          "description": "Boot ID reported by the node.",
          "type": "string"
        },
        "containerRuntimeVersion": {
          "description": "ContainerRuntime Version reported by the node through runtime remote API (e.g. containerd://1.4.2).",
          "type": "string"
        },
        "kernelVersion": {
          "description": "Kernel Version reported by the node from 'uname -r' (e.g. 3.16.0-0.bpo.4-amd64).",
          "type": "string"
        },
        "kubeProxyVersion": {
          "description": "Deprecated: KubeProxy Version reported by the node.",
          "type": "string"
        },
        "kubeletVersion": {
          "description": "Kubelet Version reported by the node.",
          "type": "string"
        },
        "machineID": {
          "type": "string",
          "title": "MachineID reported by the node. For unique machine identification\nin the cluster this field is preferred. Learn more from man(5)\nmachine-id: http://man7.org/linux/man-pages/man5/machine-id.5.html"
        },
        "operatingSystem": {
          "type": "string",
          "title": "The Operating System reported by the node"
        },
        "osImage": {
          "description": "OS Image reported by the node from /etc/os-release (e.g. Debian GNU/Linux 7 (wheezy)).",
          "type": "string"
        },
        "swap": {
          "$ref": "#/definitions/v1NodeSwapStatus"
        },
        "systemUUID": {
          "type": "string",
          "title": "SystemUUID reported by the node. For unique machine identification\nMachineID is preferred. This field is specific to Red Hat hosts\nhttps://access.redhat.com/documentation/en-us/red_hat_subscription_management/1/html/rhsm/uuid"
        }
      }
    },
    "v1ObjectMeta": {
      "description": "ObjectMeta is metadata that all persisted resources must have, which includes all objects\nusers must create.",
      "type": "object",
      "properties": {
        "annotations": {
          "type": "object",
          "title": "Annotations is an unstructured key value map stored with a resource that may be\nset by external tools to store and retrieve arbitrary metadata. They are not\nqueryable and should be preserved when modifying objects.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations\n+optional",
          "additionalProperties": {
            "type": "string"
          }
        },
        "creationTimestamp": {
          "$ref": "#/definitions/v1Time"
        },
        "deletionGracePeriodSeconds": {
          "type": "integer",
          "format": "int64",
          "title": "Number of seconds allowed for this object to gracefully terminate before\nit will be removed from the system. Only set when deletionTimestamp is also set.\nMay only be shortened.\nRead-only.\n+optional"
        },
        "deletionTimestamp": {
          "$ref": "#/definitions/v1Time"
        },
        "finalizers": {
          "type": "array",
          "title": "Must be empty before the object is deleted from the registry. Each entry\nis an identifier for the responsible component that will remove the entry\nfrom the list. If the deletionTimestamp of the object is non-nil, entries\nin this list can only be removed.\nFinalizers may be processed and removed in any order.  Order is NOT enforced\nbecause it introduces significant risk of stuck finalizers.\nfinalizers is a shared field, any actor with permission can reorder it.\nIf the finalizer list is processed in order, then this can lead to a situation\nin which the component responsible for the first finalizer in the list is\nwaiting for a signal (field value, external system, or other) produced by a\ncomponent responsible for a finalizer later in the list, resulting in a deadlock.\nWithout enforced ordering finalizers are free to order amongst themselves and\nare not vulnerable to ordering changes in the list.\n+optional\n+patchStrategy=merge\n+listType=set",
          "items": {
            "type": "string"
          }
        },
        "generateName": {
          "description": "GenerateName is an optional prefix, used by the server, to generate a unique\nname ONLY IF the Name field has not been provided.\nIf this field is used, the name returned to the client will be different\nthan the name passed. This value will also be combined with a unique suffix.\nThe provided value has the same validation rules as the Name field,\nand may be truncated by the length of the suffix required to make the value\nunique on the server.\n\nIf this field is specified and the generated name exists, the server will return a 409.\n\nApplied only if Name is not specified.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency\n+optional",
          "type": "string"
        },
        "generation": {
          "type": "integer",
          "format": "int64",
          "title": "A sequence number representing a specific generation of the desired state.\nPopulated by the system. Read-only.\n+optional"
        },
        "labels": {
          "type": "object",
          "title": "Map of string keys and values that can be used to organize and categorize\n(scope and select) objects. May match selectors of replication controllers\nand services.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels\n+optional",
          "additionalProperties": {
            "type": "string"
          }
        },
        "managedFields": {
          "description": "ManagedFields maps workflow-id and version to the set of fields\nthat are managed by that workflow. This is mostly for internal\nhousekeeping, and users typically shouldn't need to set or\nunderstand this field. A workflow can be the user's name, a\ncontroller's name, or the name of a specific apply path like\n\"ci-cd\". The set of fields is always in the version that the\nworkflow used when modifying the object.\n\n+optional\n+listType=atomic",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1ManagedFieldsEntry"
          }
        },
        "name": {
          "type": "string",
          "title": "Name must be unique within a namespace. Is required when creating resources, although\nsome resources may allow a client to request the generation of an appropriate name\nautomatically. Name is primarily intended for creation idempotence and configuration\ndefinition.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names\n+optional"
        },
        "namespace": {
          "description": "Namespace defines the space within which each name must be unique. An empty namespace is\nequivalent to the \"default\" namespace, but \"default\" is the canonical representation.\nNot all objects are required to be scoped to a namespace - the value of this field for\nthose objects will be empty.\n\nMust be a DNS_LABEL.\nCannot be updated.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces\n+optional",
          "type": "string"
        },
        "ownerReferences": {
          "type": "array",
          "title": "List of objects depended by this object. If ALL objects in the list have\nbeen deleted, this object will be garbage collected. If this object is managed by a controller,\nthen an entry in this list will point to this controller, with the controller field set to true.\nThere cannot be more than one managing controller.\n+optional\n+patchMergeKey=uid\n+patchStrategy=merge\n+listType=map\n+listMapKey=uid",
          "items": {
            "$ref": "#/definitions/v1OwnerReference"
          }
        },
        "resourceVersion": {
          "description": "An opaque value that represents the internal version of this object that can\nbe used by clients to determine when objects have changed. May be used for optimistic\nconcurrency, change detection, and the watch operation on a resource or set of resources.\nClients must treat these values as opaque and passed unmodified back to the server.\nThey may only be valid for a particular resource or set of resources.\n\nPopulated by the system.\nRead-only.\nValue must be treated as opaque by clients and .\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency\n+optional",
          "type": "string"
        },
        "selfLink": {
          "type": "string",
          "title": "Deprecated: selfLink is a legacy read-only field that is no longer populated by the system.\n+optional"
        },
        "uid": {
          "description": "UID is the unique in time and space value for this object. It is typically generated by\nthe server on successful creation of a resource and is not allowed to change on PUT\noperations.\n\nPopulated by the system.\nRead-only.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids\n+optional",
          "type": "string"
        }
      }
    },
    "v1ObjectReference": {
      "description": "ObjectReference contains enough information to let you inspect or modify the referred object.\n---\nNew uses of this type are discouraged because of difficulty describing its usage when embedded in APIs.\n 1. Ignored fields.  It includes many fields which are not generally honored.  For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage.\n 2. Invalid usage help.  It is impossible to add specific help for individual usage.  In most embedded usages, there are particular\n    restrictions like, \"must refer only to types A and B\" or \"UID not honored\" or \"name must be restricted\".\n    Those cannot be well described when embedded.\n 3. Inconsistent validation.  Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen.\n 4. The fields are both imprecise and overly precise.  Kind is not a precise mapping to a URL. This can produce ambiguity\n    during interpretation and require a REST mapping.  In most cases, the dependency is on the group,resource tuple\n    and the version of the actual struct is irrelevant.\n 5. We cannot easily change it.  Because this type is embedded in many locations, updates to this type\n    will affect numerous schemas.  Don't make new APIs embed an underspecified API type they do not control.\n\nInstead of using this type, create a locally provided and used type that is well-focused on your reference.\nFor example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object\n+structType=atomic",
      "type": "object",
      "properties": {
        "apiVersion": {
          "type": "string",
          "title": "API version of the referent.\n+optional"
        },
        "fieldPath": {
          "type": "string",
          "title": "If referring to a piece of an object instead of an entire object, this string\nshould contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].\nFor example, if the object reference is to a container within a pod, this would take on a value like:\n\"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered\nthe event) or if no container name is specified \"spec.containers[2]\" (container with\nindex 2 in this pod). This syntax is chosen only to have some well-defined way of\nreferencing a part of an object.\nTODO: this design is not final and this field is subject to change in the future.\n+optional"
        },
        "kind": {
          "type": "string",
          "title": "Kind of the referent.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds\n+optional"
        },
        "name": {
          "type": "string",
          "title": "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names\n+optional"
        },
        "namespace": {
          "type": "string",
          "title": "Namespace of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/\n+optional"
        },
        "resourceVersion": {
          "type": "string",
          "title": "Specific resourceVersion to which this reference is made, if any.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency\n+optional"
        },
        "uid": {
          "type": "string",
          "title": "UID of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids\n+optional"
        }
      }
    },
    "v1OwnerReference": {
      "type": "object",
      "title": "OwnerReference contains enough information to let you identify an owning\nobject. An owning object must be in the same namespace as the dependent, or\nbe cluster-scoped, so there is no namespace field.\n+structType=atomic",
      "properties": {
        "apiVersion": {
          "description": "API version of the referent.",
          "type": "string"
        },
        "blockOwnerDeletion": {
          "type": "boolean",
          "title": "If true, AND if the owner has the \"foregroundDeletion\" finalizer, then\nthe owner cannot be deleted from the key-value store until this\nreference is removed.\nSee https://kubernetes.io/docs/concepts/architecture/garbage-collection/#foreground-deletion\nfor how the garbage collector interacts with this field and enforces the foreground deletion.\nDefaults to false.\nTo set this field, a user needs \"delete\" permission of the owner,\notherwise 422 (Unprocessable Entity) will be returned.\n+optional"
        },
        "controller": {
          "type": "boolean",
          "title": "If true, this reference points to the managing controller.\n+optional"
        },
        "kind": {
          "type": "string",
          "title": "Kind of the referent.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
        },
        "name": {
          "type": "string",
          "title": "Name of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#names"
        },
        "uid": {
          "type": "string",
          "title": "UID of the referent.\nMore info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names#uids"
        }
      }
    },
    "v1PortStatus": {
      "type": "object",
      "title": "PortStatus represents the error condition of a service port",
      "properties": {
        "error": {
          "type": "string",
          "title": "Error is to record the problem with the service port\nThe format of the error shall comply with the following rules:\n- built-in error values shall be specified in this file and those shall use\n  CamelCase names\n- cloud provider specific error values must have names that comply with the\n  format foo.example.com/CamelCase.\n---\nThe regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)\n+optional\n+kubebuilder:validation:Required\n+kubebuilder:validation:Pattern=`^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$`\n+kubebuilder:validation:MaxLength=316"
        },
        "port": {
          "type": "integer",
          "format": "int32",
          "title": "Port is the port number of the service port of which status is recorded here"
        },
        "protocol": {
          "type": "string",
          "title": "Protocol is the protocol of the service port of which status is recorded here\nThe supported values are: \"TCP\", \"UDP\", \"SCTP\""
        }
      }
    },
    "v1Time": {
      "description": "Time is a wrapper around time.Time which supports correct\nmarshaling to YAML and JSON.  Wrappers are provided for many\nof the factory methods that the time package offers.\n\n+protobuf.options.marshal=false\n+protobuf.as=Timestamp\n+protobuf.options.(gogoproto.goproto_stringer)=false",
      "type": "string",
      "format": "date-time"
    },
    "v1alpha1AWSAuthConfig": {
      "type": "object",
      "title": "AWSAuthConfig is an AWS IAM authentication configuration",
      "properties": {
        "clusterName": {
          "type": "string",
          "title": "ClusterName contains AWS cluster name"
        },
        "profile": {
          "description": "Profile contains optional role ARN. If set then AWS IAM Authenticator uses the profile to perform cluster operations instead of the default AWS credential provider chain.",
          "type": "string"
        },
        "roleARN": {
          "description": "RoleARN contains optional role ARN. If set then AWS IAM Authenticator assume a role to perform cluster operations instead of the default AWS credential provider chain.",
          "type": "string"
        }
      }
    },
    "v1alpha1AppHealthStatus": {
      "type": "object",
      "title": "AppHealthStatus contains information about the currently observed health state of an application",
      "properties": {
        "lastTransitionTime": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "description": "Deprecated: this field is not used and will be removed in a future release.",
          "type": "string",
          "title": "Message is a human-readable informational message describing the health status"
        },
        "status": {
          "type": "string",
          "title": "Status holds the status code of the application"
        }
      }
    },
    "v1alpha1AppProject": {
      "type": "object",
      "title": "AppProject provides a logical grouping of applications, providing controls for:\n* where the apps may deploy to (cluster whitelist)\n* what may be deployed (repository whitelist, resource whitelist/blacklist)\n* who can access these applications (roles, OIDC group claims bindings)\n* and what they can do (RBAC policies)\n* automation access to these roles (JWT tokens)\n+genclient\n+genclient:noStatus\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object\n+kubebuilder:resource:path=appprojects,shortName=appproj;appprojs",
      "properties": {
        "metadata": {
          "$ref": "#/definitions/v1ObjectMeta"
        },
        "spec": {
          "$ref": "#/definitions/v1alpha1AppProjectSpec"
        },
        "status": {
          "$ref": "#/definitions/v1alpha1AppProjectStatus"
        }
      }
    },
    "v1alpha1AppProjectList": {
      "type": "object",
      "title": "AppProjectList is list of AppProject resources\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1AppProject"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1AppProjectSpec": {
      "type": "object",
      "title": "AppProjectSpec is the specification of an AppProject",
      "properties": {
        "clusterResourceBlacklist": {
          "type": "array",
          "title": "ClusterResourceBlacklist contains list of blacklisted cluster level resources",
          "items": {
            "$ref": "#/definitions/v1GroupKind"
          }
        },
        "clusterResourceWhitelist": {
          "type": "array",
          "title": "ClusterResourceWhitelist contains list of whitelisted cluster level resources",
          "items": {
            "$ref": "#/definitions/v1GroupKind"
          }
        },
        "description": {
          "type": "string",
          "title": "Description contains optional project description\n+kubebuilder:validation:MaxLength=255"
        },
        "destinationServiceAccounts": {
          "description": "DestinationServiceAccounts holds information about the service accounts to be impersonated for the application sync operation for each destination.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationDestinationServiceAccount"
          }
        },
        "destinations": {
          "type": "array",
          "title": "Destinations contains list of destinations available for deployment",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationDestination"
          }
        },
        "namespaceResourceBlacklist": {
          "type": "array",
          "title": "NamespaceResourceBlacklist contains list of blacklisted namespace level resources",
          "items": {
            "$ref": "#/definitions/v1GroupKind"
          }
        },
        "namespaceResourceWhitelist": {
          "type": "array",
          "title": "NamespaceResourceWhitelist contains list of whitelisted namespace level resources",
          "items": {
            "$ref": "#/definitions/v1GroupKind"
          }
        },
        "orphanedResources": {
          "$ref": "#/definitions/v1alpha1OrphanedResourcesMonitorSettings"
        },
        "permitOnlyProjectScopedClusters": {
          "type": "boolean",
          "title": "PermitOnlyProjectScopedClusters determines whether destinations can only reference clusters which are project-scoped"
        },
        "roles": {
          "type": "array",
          "title": "Roles are user defined RBAC roles associated with this project",
          "items": {
            "$ref": "#/definitions/v1alpha1ProjectRole"
          }
        },
        "signatureKeys": {
          "type": "array",
          "title": "SignatureKeys contains a list of PGP key IDs that commits in Git must be signed with in order to be allowed for sync",
          "items": {
            "$ref": "#/definitions/v1alpha1SignatureKey"
          }
        },
        "sourceNamespaces": {
          "type": "array",
          "title": "SourceNamespaces defines the namespaces application resources are allowed to be created in",
          "items": {
            "type": "string"
          }
        },
        "sourceRepos": {
          "type": "array",
          "title": "SourceRepos contains list of repository URLs which can be used for deployment",
          "items": {
            "type": "string"
          }
        },
        "syncWindows": {
          "type": "array",
          "title": "SyncWindows controls when syncs can be run for apps in this project",
          "items": {
            "$ref": "#/definitions/v1alpha1SyncWindow"
          }
        }
      }
    },
    "v1alpha1AppProjectStatus": {
      "type": "object",
      "title": "AppProjectStatus contains status information for AppProject CRs",
      "properties": {
        "jwtTokensByRole": {
          "type": "object",
          "title": "JWTTokensByRole contains a list of JWT tokens issued for a given role",
          "additionalProperties": {
            "$ref": "#/definitions/v1alpha1JWTTokens"
          }
        }
      }
    },
    "v1alpha1Application": {
      "type": "object",
      "title": "Application is a definition of Application resource.\n+genclient\n+genclient:noStatus\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object\n+kubebuilder:resource:path=applications,shortName=app;apps\n+kubebuilder:printcolumn:name=\"Sync Status\",type=string,JSONPath=`.status.sync.status`\n+kubebuilder:printcolumn:name=\"Health Status\",type=string,JSONPath=`.status.health.status`\n+kubebuilder:printcolumn:name=\"Revision\",type=string,JSONPath=`.status.sync.revision`,priority=10\n+kubebuilder:printcolumn:name=\"Project\",type=string,JSONPath=`.spec.project`,priority=10",
      "properties": {
        "metadata": {
          "$ref": "#/definitions/v1ObjectMeta"
        },
        "operation": {
          "$ref": "#/definitions/v1alpha1Operation"
        },
        "spec": {
          "$ref": "#/definitions/v1alpha1ApplicationSpec"
        },
        "status": {
          "$ref": "#/definitions/v1alpha1ApplicationStatus"
        }
      }
    },
    "v1alpha1ApplicationCondition": {
      "type": "object",
      "title": "ApplicationCondition contains details about an application condition, which is usually an error or warning",
      "properties": {
        "lastTransitionTime": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "type": "string",
          "title": "Message contains human-readable message indicating details about condition"
        },
        "type": {
          "type": "string",
          "title": "Type is an application condition type"
        }
      }
    },
    "v1alpha1ApplicationDestination": {
      "type": "object",
      "title": "ApplicationDestination holds information about the application's destination",
      "properties": {
        "name": {
          "description": "Name is an alternate way of specifying the target cluster by its symbolic name. This must be set if Server is not set.",
          "type": "string"
        },
        "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"
        },
        "server": {
          "description": "Server specifies the URL of the target cluster's Kubernetes control plane API. This must be set if Name is not set.",
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationDestinationServiceAccount": {
      "description": "ApplicationDestinationServiceAccount holds information about the service account to be impersonated for the application sync operation.",
      "type": "object",
      "properties": {
        "defaultServiceAccount": {
          "type": "string",
          "title": "DefaultServiceAccount to be used for impersonation during the sync operation"
        },
        "namespace": {
          "description": "Namespace specifies the target namespace for the application's resources.",
          "type": "string"
        },
        "server": {
          "description": "Server specifies the URL of the target cluster's Kubernetes control plane API.",
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationList": {
      "type": "object",
      "title": "ApplicationList is list of Application resources\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Application"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1ApplicationMatchExpression": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "operator": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ApplicationPreservedFields": {
      "type": "object",
      "properties": {
        "annotations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "labels": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ApplicationSet": {
      "type": "object",
      "title": "ApplicationSet is a set of Application resources\n+genclient\n+genclient:noStatus\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object\n+kubebuilder:resource:path=applicationsets,shortName=appset;appsets\n+kubebuilder:subresource:status",
      "properties": {
        "metadata": {
          "$ref": "#/definitions/v1ObjectMeta"
        },
        "spec": {
          "$ref": "#/definitions/v1alpha1ApplicationSetSpec"
        },
        "status": {
          "$ref": "#/definitions/v1alpha1ApplicationSetStatus"
        }
      }
    },
    "v1alpha1ApplicationSetApplicationStatus": {
      "type": "object",
      "title": "ApplicationSetApplicationStatus contains details about each Application managed by the ApplicationSet",
      "properties": {
        "application": {
          "type": "string",
          "title": "Application contains the name of the Application resource"
        },
        "lastTransitionTime": {
          "$ref": "#/definitions/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: (Waiting, Pending, Progressing, Healthy)"
        },
        "step": {
          "type": "string",
          "title": "Step tracks which step this Application should be updated in"
        },
        "targetrevisions": {
          "description": "TargetRevision tracks the desired revisions the Application should be synced to.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ApplicationSetCondition": {
      "type": "object",
      "title": "ApplicationSetCondition contains details about an applicationset condition, which is usually an error or warning",
      "properties": {
        "lastTransitionTime": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "type": "string",
          "title": "Message contains human-readable message indicating details about condition"
        },
        "reason": {
          "type": "string",
          "title": "Single word camelcase representing the reason for the status eg ErrorOccurred"
        },
        "status": {
          "type": "string",
          "title": "True/False/Unknown"
        },
        "type": {
          "type": "string",
          "title": "Type is an applicationset condition type"
        }
      }
    },
    "v1alpha1ApplicationSetGenerator": {
      "description": "ApplicationSetGenerator represents a generator at the top level of an ApplicationSet.",
      "type": "object",
      "properties": {
        "clusterDecisionResource": {
          "$ref": "#/definitions/v1alpha1DuckTypeGenerator"
        },
        "clusters": {
          "$ref": "#/definitions/v1alpha1ClusterGenerator"
        },
        "git": {
          "$ref": "#/definitions/v1alpha1GitGenerator"
        },
        "list": {
          "$ref": "#/definitions/v1alpha1ListGenerator"
        },
        "matrix": {
          "$ref": "#/definitions/v1alpha1MatrixGenerator"
        },
        "merge": {
          "$ref": "#/definitions/v1alpha1MergeGenerator"
        },
        "plugin": {
          "$ref": "#/definitions/v1alpha1PluginGenerator"
        },
        "pullRequest": {
          "$ref": "#/definitions/v1alpha1PullRequestGenerator"
        },
        "scmProvider": {
          "$ref": "#/definitions/v1alpha1SCMProviderGenerator"
        },
        "selector": {
          "$ref": "#/definitions/v1LabelSelector"
        }
      }
    },
    "v1alpha1ApplicationSetList": {
      "type": "object",
      "title": "ApplicationSetList contains a list of ApplicationSet\n+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object\n+kubebuilder:object:root=true",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSet"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1ApplicationSetNestedGenerator": {
      "description": "ApplicationSetNestedGenerator represents a generator nested within a combination-type generator (MatrixGenerator or\nMergeGenerator).",
      "type": "object",
      "properties": {
        "clusterDecisionResource": {
          "$ref": "#/definitions/v1alpha1DuckTypeGenerator"
        },
        "clusters": {
          "$ref": "#/definitions/v1alpha1ClusterGenerator"
        },
        "git": {
          "$ref": "#/definitions/v1alpha1GitGenerator"
        },
        "list": {
          "$ref": "#/definitions/v1alpha1ListGenerator"
        },
        "matrix": {
          "$ref": "#/definitions/v1JSON"
        },
        "merge": {
          "$ref": "#/definitions/v1JSON"
        },
        "plugin": {
          "$ref": "#/definitions/v1alpha1PluginGenerator"
        },
        "pullRequest": {
          "$ref": "#/definitions/v1alpha1PullRequestGenerator"
        },
        "scmProvider": {
          "$ref": "#/definitions/v1alpha1SCMProviderGenerator"
        },
        "selector": {
          "$ref": "#/definitions/v1LabelSelector"
        }
      }
    },
    "v1alpha1ApplicationSetResourceIgnoreDifferences": {
      "description": "ApplicationSetResourceIgnoreDifferences configures how the ApplicationSet controller will ignore differences in live\napplications when applying changes from generated applications.",
      "type": "object",
      "properties": {
        "jqPathExpressions": {
          "description": "JQPathExpressions is a list of JQ path expressions to fields to ignore differences for.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "jsonPointers": {
          "description": "JSONPointers is a list of JSON pointers to fields to ignore differences for.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "description": "Name is the name of the application to ignore differences for. If not specified, the rule applies to all applications.",
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSetRolloutStep": {
      "type": "object",
      "properties": {
        "matchExpressions": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationMatchExpression"
          }
        },
        "maxUpdate": {
          "$ref": "#/definitions/intstrIntOrString"
        }
      }
    },
    "v1alpha1ApplicationSetRolloutStrategy": {
      "type": "object",
      "properties": {
        "steps": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetRolloutStep"
          }
        }
      }
    },
    "v1alpha1ApplicationSetSpec": {
      "description": "ApplicationSetSpec represents a class of application set state.",
      "type": "object",
      "properties": {
        "applyNestedSelectors": {
          "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.",
          "type": "boolean"
        },
        "generators": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetGenerator"
          }
        },
        "goTemplate": {
          "type": "boolean"
        },
        "goTemplateOptions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ignoreApplicationDifferences": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetResourceIgnoreDifferences"
          }
        },
        "preservedFields": {
          "$ref": "#/definitions/v1alpha1ApplicationPreservedFields"
        },
        "strategy": {
          "$ref": "#/definitions/v1alpha1ApplicationSetStrategy"
        },
        "syncPolicy": {
          "$ref": "#/definitions/v1alpha1ApplicationSetSyncPolicy"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "templatePatch": {
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSetStatus": {
      "type": "object",
      "title": "ApplicationSetStatus defines the observed state of ApplicationSet",
      "properties": {
        "applicationStatus": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetApplicationStatus"
          }
        },
        "conditions": {
          "type": "array",
          "title": "INSERT ADDITIONAL STATUS FIELD - define observed state of cluster\nImportant: Run \"make\" to regenerate code after modifying this file",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetCondition"
          }
        },
        "resources": {
          "description": "Resources is a list of Applications resources managed by this application set.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationv1alpha1ResourceStatus"
          }
        },
        "resourcesCount": {
          "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).",
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "v1alpha1ApplicationSetStrategy": {
      "description": "ApplicationSetStrategy configures how generated Applications are updated in sequence.",
      "type": "object",
      "properties": {
        "deletionOrder": {
          "type": "string",
          "title": "DeletionOrder allows specifying the order for deleting generated apps when progressive sync is enabled.\naccepts values \"AllAtOnce\" and \"Reverse\""
        },
        "rollingSync": {
          "$ref": "#/definitions/v1alpha1ApplicationSetRolloutStrategy"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSetSyncPolicy": {
      "description": "ApplicationSetSyncPolicy configures how generated Applications will relate to their\nApplicationSet.",
      "type": "object",
      "properties": {
        "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"
        },
        "preserveResourcesOnDeletion": {
          "description": "PreserveResourcesOnDeletion will preserve resources on deletion. If PreserveResourcesOnDeletion is set to true, these Applications will not be deleted.",
          "type": "boolean"
        }
      }
    },
    "v1alpha1ApplicationSetTemplate": {
      "type": "object",
      "title": "ApplicationSetTemplate represents argocd ApplicationSpec",
      "properties": {
        "metadata": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplateMeta"
        },
        "spec": {
          "$ref": "#/definitions/v1alpha1ApplicationSpec"
        }
      }
    },
    "v1alpha1ApplicationSetTemplateMeta": {
      "type": "object",
      "title": "ApplicationSetTemplateMeta represents the Argo CD application fields that may\nbe used for Applications generated from the ApplicationSet (based on metav1.ObjectMeta)",
      "properties": {
        "annotations": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "finalizers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSetTree": {
      "type": "object",
      "title": "ApplicationSetTree holds nodes which belongs to the application\nUsed to build a tree of an ApplicationSet and its children",
      "properties": {
        "nodes": {
          "type": "array",
          "title": "Nodes contains list of nodes which are directly managed by the applicationset",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceNode"
          }
        }
      }
    },
    "v1alpha1ApplicationSource": {
      "type": "object",
      "title": "ApplicationSource contains all required information about the source of an application",
      "properties": {
        "chart": {
          "description": "Chart is a Helm chart name, and must be specified for applications sourced from a Helm repo.",
          "type": "string"
        },
        "directory": {
          "$ref": "#/definitions/v1alpha1ApplicationSourceDirectory"
        },
        "helm": {
          "$ref": "#/definitions/v1alpha1ApplicationSourceHelm"
        },
        "kustomize": {
          "$ref": "#/definitions/v1alpha1ApplicationSourceKustomize"
        },
        "name": {
          "description": "Name is used to refer to a source and is displayed in the UI. It is used in multi-source Applications.",
          "type": "string"
        },
        "path": {
          "description": "Path is a directory path within the Git repository, and is only valid for applications sourced from Git.",
          "type": "string"
        },
        "plugin": {
          "$ref": "#/definitions/v1alpha1ApplicationSourcePlugin"
        },
        "ref": {
          "description": "Ref is reference to another source within sources field. This field will not be used if used with a `source` tag.",
          "type": "string"
        },
        "repoURL": {
          "type": "string",
          "title": "RepoURL is the URL to the repository (Git or Helm) that contains the application manifests"
        },
        "targetRevision": {
          "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.",
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSourceDirectory": {
      "type": "object",
      "title": "ApplicationSourceDirectory holds options for applications of type plain YAML or Jsonnet",
      "properties": {
        "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"
        },
        "jsonnet": {
          "$ref": "#/definitions/v1alpha1ApplicationSourceJsonnet"
        },
        "recurse": {
          "type": "boolean",
          "title": "Recurse specifies whether to scan a directory recursively for manifests"
        }
      }
    },
    "v1alpha1ApplicationSourceHelm": {
      "type": "object",
      "title": "ApplicationSourceHelm holds helm specific options",
      "properties": {
        "apiVersions": {
          "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.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "fileParameters": {
          "type": "array",
          "title": "FileParameters are file parameters to the helm template",
          "items": {
            "$ref": "#/definitions/v1alpha1HelmFileParameter"
          }
        },
        "ignoreMissingValueFiles": {
          "type": "boolean",
          "title": "IgnoreMissingValueFiles prevents helm template from failing when valueFiles do not exist locally by not appending them to helm template --values"
        },
        "kubeVersion": {
          "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.",
          "type": "string"
        },
        "namespace": {
          "description": "Namespace is an optional namespace to template with. If left empty, defaults to the app's destination namespace.",
          "type": "string"
        },
        "parameters": {
          "type": "array",
          "title": "Parameters is a list of Helm parameters which are passed to the helm template command upon manifest generation",
          "items": {
            "$ref": "#/definitions/v1alpha1HelmParameter"
          }
        },
        "passCredentials": {
          "type": "boolean",
          "title": "PassCredentials pass credentials to all domains (Helm's --pass-credentials)"
        },
        "releaseName": {
          "type": "string",
          "title": "ReleaseName is the Helm release name to use. If omitted it will use the application name"
        },
        "skipCrds": {
          "type": "boolean",
          "title": "SkipCrds skips custom resource definition installation step (Helm's --skip-crds)"
        },
        "skipSchemaValidation": {
          "type": "boolean",
          "title": "SkipSchemaValidation skips JSON schema validation (Helm's --skip-schema-validation)"
        },
        "skipTests": {
          "description": "SkipTests skips test manifest installation step (Helm's --skip-tests).",
          "type": "boolean"
        },
        "valueFiles": {
          "type": "array",
          "title": "ValuesFiles is a list of Helm value files to use when generating a template",
          "items": {
            "type": "string"
          }
        },
        "values": {
          "type": "string",
          "title": "Values specifies Helm values to be passed to helm template, typically defined as a block. ValuesObject takes precedence over Values, so use one or the other.\n+patchStrategy=replace"
        },
        "valuesObject": {
          "$ref": "#/definitions/runtimeRawExtension"
        },
        "version": {
          "type": "string",
          "title": "Version is the Helm version to use for templating (\"3\")"
        }
      }
    },
    "v1alpha1ApplicationSourceJsonnet": {
      "type": "object",
      "title": "ApplicationSourceJsonnet holds options specific to applications of type Jsonnet",
      "properties": {
        "extVars": {
          "type": "array",
          "title": "ExtVars is a list of Jsonnet External Variables",
          "items": {
            "$ref": "#/definitions/v1alpha1JsonnetVar"
          }
        },
        "libs": {
          "type": "array",
          "title": "Additional library search dirs",
          "items": {
            "type": "string"
          }
        },
        "tlas": {
          "type": "array",
          "title": "TLAS is a list of Jsonnet Top-level Arguments",
          "items": {
            "$ref": "#/definitions/v1alpha1JsonnetVar"
          }
        }
      }
    },
    "v1alpha1ApplicationSourceKustomize": {
      "type": "object",
      "title": "ApplicationSourceKustomize holds options specific to an Application source specific to Kustomize",
      "properties": {
        "apiVersions": {
          "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.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "commonAnnotations": {
          "type": "object",
          "title": "CommonAnnotations is a list of additional annotations to add to rendered manifests",
          "additionalProperties": {
            "type": "string"
          }
        },
        "commonAnnotationsEnvsubst": {
          "type": "boolean",
          "title": "CommonAnnotationsEnvsubst specifies whether to apply env variables substitution for annotation values"
        },
        "commonLabels": {
          "type": "object",
          "title": "CommonLabels is a list of additional labels to add to rendered manifests",
          "additionalProperties": {
            "type": "string"
          }
        },
        "components": {
          "type": "array",
          "title": "Components specifies a list of kustomize components to add to the kustomization before building",
          "items": {
            "type": "string"
          }
        },
        "forceCommonAnnotations": {
          "type": "boolean",
          "title": "ForceCommonAnnotations specifies whether to force applying common annotations to resources for Kustomize apps"
        },
        "forceCommonLabels": {
          "type": "boolean",
          "title": "ForceCommonLabels specifies whether to force applying common labels to resources for Kustomize apps"
        },
        "ignoreMissingComponents": {
          "type": "boolean",
          "title": "IgnoreMissingComponents prevents kustomize from failing when components do not exist locally by not appending them to kustomization file"
        },
        "images": {
          "type": "array",
          "title": "Images is a list of Kustomize image override specifications",
          "items": {
            "type": "string"
          }
        },
        "kubeVersion": {
          "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.",
          "type": "string"
        },
        "labelIncludeTemplates": {
          "type": "boolean",
          "title": "LabelIncludeTemplates specifies whether to apply common labels to resource templates or not"
        },
        "labelWithoutSelector": {
          "type": "boolean",
          "title": "LabelWithoutSelector specifies whether to apply common labels to resource selectors or not"
        },
        "namePrefix": {
          "type": "string",
          "title": "NamePrefix is a prefix appended to resources for Kustomize apps"
        },
        "nameSuffix": {
          "type": "string",
          "title": "NameSuffix is a suffix appended to resources for Kustomize apps"
        },
        "namespace": {
          "type": "string",
          "title": "Namespace sets the namespace that Kustomize adds to all resources"
        },
        "patches": {
          "type": "array",
          "title": "Patches is a list of Kustomize patches",
          "items": {
            "$ref": "#/definitions/v1alpha1KustomizePatch"
          }
        },
        "replicas": {
          "type": "array",
          "title": "Replicas is a list of Kustomize Replicas override specifications",
          "items": {
            "$ref": "#/definitions/v1alpha1KustomizeReplica"
          }
        },
        "version": {
          "type": "string",
          "title": "Version controls which version of Kustomize to use for rendering manifests"
        }
      }
    },
    "v1alpha1ApplicationSourcePlugin": {
      "type": "object",
      "title": "ApplicationSourcePlugin holds options specific to config management plugins",
      "properties": {
        "env": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/applicationv1alpha1EnvEntry"
          }
        },
        "name": {
          "type": "string"
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSourcePluginParameter"
          }
        }
      }
    },
    "v1alpha1ApplicationSourcePluginParameter": {
      "type": "object",
      "properties": {
        "array": {
          "description": "Array is the value of an array type parameter.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "map": {
          "description": "Map is the value of a map type parameter.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "description": "Name is the name identifying a parameter.",
          "type": "string"
        },
        "string": {
          "description": "String_ is the value of a string type parameter.",
          "type": "string"
        }
      }
    },
    "v1alpha1ApplicationSpec": {
      "description": "ApplicationSpec represents desired application state. Contains link to repository with application definition and additional parameters link definition revision.",
      "type": "object",
      "properties": {
        "destination": {
          "$ref": "#/definitions/v1alpha1ApplicationDestination"
        },
        "ignoreDifferences": {
          "type": "array",
          "title": "IgnoreDifferences is a list of resources and their fields which should be ignored during comparison",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceIgnoreDifferences"
          }
        },
        "info": {
          "type": "array",
          "title": "Info contains a list of information (URLs, email addresses, and plain text) that relates to the application",
          "items": {
            "$ref": "#/definitions/v1alpha1Info"
          }
        },
        "project": {
          "description": "Project is a reference to the project this application belongs to.\nThe empty string means that application belongs to the 'default' project.",
          "type": "string"
        },
        "revisionHistoryLimit": {
          "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.",
          "type": "integer",
          "format": "int64"
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sourceHydrator": {
          "$ref": "#/definitions/v1alpha1SourceHydrator"
        },
        "sources": {
          "type": "array",
          "title": "Sources is a reference to the location of the application's manifests or chart",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSource"
          }
        },
        "syncPolicy": {
          "$ref": "#/definitions/v1alpha1SyncPolicy"
        }
      }
    },
    "v1alpha1ApplicationStatus": {
      "type": "object",
      "title": "ApplicationStatus contains status information for the application",
      "properties": {
        "conditions": {
          "type": "array",
          "title": "Conditions is a list of currently observed application conditions",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationCondition"
          }
        },
        "controllerNamespace": {
          "type": "string",
          "title": "ControllerNamespace indicates the namespace in which the application controller is located"
        },
        "health": {
          "$ref": "#/definitions/v1alpha1AppHealthStatus"
        },
        "history": {
          "type": "array",
          "title": "History contains information about the application's sync history",
          "items": {
            "$ref": "#/definitions/v1alpha1RevisionHistory"
          }
        },
        "observedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "operationState": {
          "$ref": "#/definitions/v1alpha1OperationState"
        },
        "reconciledAt": {
          "$ref": "#/definitions/v1Time"
        },
        "resourceHealthSource": {
          "type": "string",
          "title": "ResourceHealthSource indicates where the resource health status is stored: inline if not set or appTree"
        },
        "resources": {
          "type": "array",
          "title": "Resources is a list of Kubernetes resources managed by this application",
          "items": {
            "$ref": "#/definitions/applicationv1alpha1ResourceStatus"
          }
        },
        "sourceHydrator": {
          "$ref": "#/definitions/v1alpha1SourceHydratorStatus"
        },
        "sourceType": {
          "type": "string",
          "title": "SourceType specifies the type of this application"
        },
        "sourceTypes": {
          "type": "array",
          "title": "SourceTypes specifies the type of the sources included in the application",
          "items": {
            "type": "string"
          }
        },
        "summary": {
          "$ref": "#/definitions/v1alpha1ApplicationSummary"
        },
        "sync": {
          "$ref": "#/definitions/v1alpha1SyncStatus"
        }
      }
    },
    "v1alpha1ApplicationSummary": {
      "type": "object",
      "title": "ApplicationSummary contains information about URLs and container images used by an application",
      "properties": {
        "externalURLs": {
          "description": "ExternalURLs holds all external URLs of application child resources.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "images": {
          "description": "Images holds all images of application child resources.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ApplicationTree": {
      "description": "ApplicationTree represents the hierarchical structure of resources associated with an Argo CD application.",
      "type": "object",
      "properties": {
        "hosts": {
          "description": "Hosts provides a list of Kubernetes nodes that are running pods related to the application.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1HostInfo"
          }
        },
        "nodes": {
          "description": "Nodes contains a list of resources that are either directly managed by the application\nor are children of directly managed resources.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceNode"
          }
        },
        "orphanedNodes": {
          "description": "OrphanedNodes contains resources that exist in the same namespace as the application\nbut are not managed by it. This list is populated only if orphaned resource tracking\nis enabled in the application's project settings.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceNode"
          }
        },
        "shardsCount": {
          "description": "ShardsCount represents the total number of shards the application tree is split into.\nThis is used to distribute resource processing across multiple shards.",
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "v1alpha1ApplicationWatchEvent": {
      "description": "ApplicationWatchEvent contains information about application change.",
      "type": "object",
      "properties": {
        "application": {
          "$ref": "#/definitions/v1alpha1Application"
        },
        "type": {
          "type": "string"
        }
      }
    },
    "v1alpha1Backoff": {
      "type": "object",
      "title": "Backoff is the backoff strategy to use on subsequent retries for failing syncs",
      "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": "integer",
          "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"
        }
      }
    },
    "v1alpha1BasicAuthBitbucketServer": {
      "description": "BasicAuthBitbucketServer defines the username/(password or personal access token) for Basic auth.",
      "type": "object",
      "properties": {
        "passwordRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        },
        "username": {
          "type": "string",
          "title": "Username for Basic auth"
        }
      }
    },
    "v1alpha1BearerTokenBitbucket": {
      "description": "BearerTokenBitbucket defines the Bearer token for BitBucket AppToken auth.",
      "type": "object",
      "properties": {
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1BearerTokenBitbucketCloud": {
      "description": "BearerTokenBitbucketCloud defines the Bearer token for BitBucket AppToken auth.",
      "type": "object",
      "properties": {
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1ChartDetails": {
      "type": "object",
      "title": "ChartDetails contains helm chart metadata for a specific version",
      "properties": {
        "description": {
          "type": "string"
        },
        "home": {
          "type": "string",
          "title": "The URL of this projects home page, e.g. \"http://example.com\""
        },
        "maintainers": {
          "type": "array",
          "title": "List of maintainer details, name and email, e.g. [\"John Doe <john_doe@my-company.com>\"]",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1Cluster": {
      "type": "object",
      "title": "Cluster is the definition of a cluster resource",
      "properties": {
        "annotations": {
          "type": "object",
          "title": "Annotations for cluster secret metadata",
          "additionalProperties": {
            "type": "string"
          }
        },
        "clusterResources": {
          "description": "Indicates if cluster level resources should be managed. This setting is used only if cluster is connected in a namespaced mode.",
          "type": "boolean"
        },
        "config": {
          "$ref": "#/definitions/v1alpha1ClusterConfig"
        },
        "connectionState": {
          "$ref": "#/definitions/v1alpha1ConnectionState"
        },
        "info": {
          "$ref": "#/definitions/v1alpha1ClusterInfo"
        },
        "labels": {
          "type": "object",
          "title": "Labels for cluster secret metadata",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "title": "Name of the cluster. If omitted, will use the server address"
        },
        "namespaces": {
          "description": "Holds list of namespaces which are accessible in that cluster. Cluster level resources will be ignored if namespace list is not empty.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "project": {
          "type": "string",
          "title": "Reference between project and cluster that allow you automatically to be added as item inside Destinations project entity"
        },
        "refreshRequestedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "server": {
          "type": "string",
          "title": "Server is the API server URL of the Kubernetes cluster"
        },
        "serverVersion": {
          "type": "string",
          "title": "Deprecated: use Info.ServerVersion field instead.\nThe server version"
        },
        "shard": {
          "description": "Shard contains optional shard number. Calculated on the fly by the application controller if not specified.",
          "type": "integer",
          "format": "int64"
        }
      }
    },
    "v1alpha1ClusterCacheInfo": {
      "type": "object",
      "title": "ClusterCacheInfo contains information about the cluster cache",
      "properties": {
        "apisCount": {
          "type": "integer",
          "format": "int64",
          "title": "APIsCount holds number of observed Kubernetes API count"
        },
        "lastCacheSyncTime": {
          "$ref": "#/definitions/v1Time"
        },
        "resourcesCount": {
          "type": "integer",
          "format": "int64",
          "title": "ResourcesCount holds number of observed Kubernetes resources"
        }
      }
    },
    "v1alpha1ClusterConfig": {
      "description": "ClusterConfig is the configuration attributes. This structure is subset of the go-client\nrest.Config with annotations added for marshalling.",
      "type": "object",
      "properties": {
        "awsAuthConfig": {
          "$ref": "#/definitions/v1alpha1AWSAuthConfig"
        },
        "bearerToken": {
          "description": "Server requires Bearer authentication. This client will not attempt to use\nrefresh tokens for an OAuth2 flow.\nTODO: demonstrate an OAuth2 compatible client.",
          "type": "string"
        },
        "disableCompression": {
          "description": "DisableCompression bypasses automatic GZip compression requests to the server.",
          "type": "boolean"
        },
        "execProviderConfig": {
          "$ref": "#/definitions/v1alpha1ExecProviderConfig"
        },
        "password": {
          "type": "string"
        },
        "proxyUrl": {
          "type": "string",
          "title": "ProxyURL is the URL to the proxy to be used for all requests send to the server"
        },
        "tlsClientConfig": {
          "$ref": "#/definitions/v1alpha1TLSClientConfig"
        },
        "username": {
          "type": "string",
          "title": "Server requires Basic authentication"
        }
      }
    },
    "v1alpha1ClusterGenerator": {
      "description": "ClusterGenerator defines a generator to match against clusters registered with ArgoCD.",
      "type": "object",
      "properties": {
        "flatList": {
          "type": "boolean",
          "title": "returns the clusters a single 'clusters' value in the template"
        },
        "selector": {
          "$ref": "#/definitions/v1LabelSelector"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "title": "Values contains key/value pairs which are passed directly as parameters to the template",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ClusterInfo": {
      "type": "object",
      "title": "ClusterInfo contains information about the cluster",
      "properties": {
        "apiVersions": {
          "type": "array",
          "title": "APIVersions contains list of API versions supported by the cluster",
          "items": {
            "type": "string"
          }
        },
        "applicationsCount": {
          "type": "integer",
          "format": "int64",
          "title": "ApplicationsCount is the number of applications managed by Argo CD on the cluster"
        },
        "cacheInfo": {
          "$ref": "#/definitions/v1alpha1ClusterCacheInfo"
        },
        "connectionState": {
          "$ref": "#/definitions/v1alpha1ConnectionState"
        },
        "serverVersion": {
          "type": "string",
          "title": "ServerVersion contains information about the Kubernetes version of the cluster"
        }
      }
    },
    "v1alpha1ClusterList": {
      "description": "ClusterList is a collection of Clusters.",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Cluster"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1Command": {
      "type": "object",
      "title": "Command holds binary path and arguments list",
      "properties": {
        "args": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "command": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1CommitMetadata": {
      "description": "CommitMetadata contains metadata about a commit that is related in some way to another commit.",
      "type": "object",
      "properties": {
        "author": {
          "description": "Author is the author of the commit, i.e. `git show -s --format=%an <%ae>`.\nMust be formatted according to RFC 5322 (mail.Address.String()).\nComes from the Argocd-reference-commit-author trailer.",
          "type": "string"
        },
        "body": {
          "description": "Body is the commit message body minus the subject line, i.e. `git show -s --format=%b`.\nComes from the Argocd-reference-commit-body trailer.",
          "type": "string"
        },
        "date": {
          "description": "Date is the date of the commit, formatted as by `git show -s --format=%aI` (RFC 3339).\nIt can also be an empty string if the date is unknown.\nComes from the Argocd-reference-commit-date trailer.",
          "type": "string"
        },
        "repoUrl": {
          "description": "RepoURL is the URL of the repository where the commit is located.\nComes from the Argocd-reference-commit-repourl trailer.\nThis value is not validated and should not be used to construct UI links unless it is properly\nvalidated and/or sanitized first.",
          "type": "string"
        },
        "sha": {
          "description": "SHA is the commit hash.\nComes from the Argocd-reference-commit-sha trailer.",
          "type": "string"
        },
        "subject": {
          "description": "Subject is the commit message subject line, i.e. `git show -s --format=%s`.\nComes from the Argocd-reference-commit-subject trailer.",
          "type": "string"
        }
      }
    },
    "v1alpha1ComparedTo": {
      "type": "object",
      "title": "ComparedTo contains application source and target which was used for resources comparison",
      "properties": {
        "destination": {
          "$ref": "#/definitions/v1alpha1ApplicationDestination"
        },
        "ignoreDifferences": {
          "type": "array",
          "title": "IgnoreDifferences is a reference to the application's ignored differences used for comparison",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceIgnoreDifferences"
          }
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sources": {
          "type": "array",
          "title": "Sources is a reference to the application's multiple sources used for comparison",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSource"
          }
        }
      }
    },
    "v1alpha1ConfigManagementPlugin": {
      "type": "object",
      "title": "ConfigManagementPlugin contains config management plugin configuration",
      "properties": {
        "generate": {
          "$ref": "#/definitions/v1alpha1Command"
        },
        "init": {
          "$ref": "#/definitions/v1alpha1Command"
        },
        "lockRepo": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "v1alpha1ConfigMapKeyRef": {
      "description": "Utility struct for a reference to a configmap key.",
      "type": "object",
      "properties": {
        "configMapName": {
          "type": "string"
        },
        "key": {
          "type": "string"
        }
      }
    },
    "v1alpha1ConnectionState": {
      "type": "object",
      "title": "ConnectionState contains information about remote resource connection state, currently used for clusters and repositories",
      "properties": {
        "attemptedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "type": "string",
          "title": "Message contains human readable information about the connection status"
        },
        "status": {
          "type": "string",
          "title": "Status contains the current status indicator for the connection"
        }
      }
    },
    "v1alpha1DrySource": {
      "description": "DrySource specifies a location for dry \"don't repeat yourself\" manifest source information.",
      "type": "object",
      "properties": {
        "path": {
          "type": "string",
          "title": "Path is a directory path within the Git repository where the manifests are located"
        },
        "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"
        }
      }
    },
    "v1alpha1DuckTypeGenerator": {
      "description": "DuckType defines a generator to match against clusters registered with ArgoCD.",
      "type": "object",
      "properties": {
        "configMapRef": {
          "type": "string",
          "title": "ConfigMapRef is a ConfigMap with the duck type definitions needed to retrieve the data\n             this includes apiVersion(group/version), kind, matchKey and validation settings\nName is the resource name of the kind, group and version, defined in the ConfigMapRef\nRequeueAfterSeconds is how long before the duckType will be rechecked for a change"
        },
        "labelSelector": {
          "$ref": "#/definitions/v1LabelSelector"
        },
        "name": {
          "type": "string"
        },
        "requeueAfterSeconds": {
          "type": "integer",
          "format": "int64"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "title": "Values contains key/value pairs which are passed directly as parameters to the template",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1ExecProviderConfig": {
      "type": "object",
      "title": "ExecProviderConfig is config used to call an external command to perform cluster authentication\nSee: https://godoc.org/k8s.io/client-go/tools/clientcmd/api#ExecConfig",
      "properties": {
        "apiVersion": {
          "type": "string",
          "title": "Preferred input version of the ExecInfo"
        },
        "args": {
          "type": "array",
          "title": "Arguments to pass to the command when executing it",
          "items": {
            "type": "string"
          }
        },
        "command": {
          "type": "string",
          "title": "Command to execute"
        },
        "env": {
          "type": "object",
          "title": "Env defines additional environment variables to expose to the process",
          "additionalProperties": {
            "type": "string"
          }
        },
        "installHint": {
          "type": "string",
          "title": "This text is shown to the user when the executable doesn't seem to be present"
        }
      }
    },
    "v1alpha1GitDirectoryGeneratorItem": {
      "type": "object",
      "properties": {
        "exclude": {
          "type": "boolean"
        },
        "path": {
          "type": "string"
        }
      }
    },
    "v1alpha1GitFileGeneratorItem": {
      "type": "object",
      "properties": {
        "exclude": {
          "type": "boolean"
        },
        "path": {
          "type": "string"
        }
      }
    },
    "v1alpha1GitGenerator": {
      "type": "object",
      "properties": {
        "directories": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1GitDirectoryGeneratorItem"
          }
        },
        "files": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1GitFileGeneratorItem"
          }
        },
        "pathParamPrefix": {
          "type": "string"
        },
        "repoURL": {
          "type": "string"
        },
        "requeueAfterSeconds": {
          "type": "integer",
          "format": "int64"
        },
        "revision": {
          "type": "string"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "title": "Values contains key/value pairs which are passed directly as parameters to the template",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1GnuPGPublicKey": {
      "type": "object",
      "title": "GnuPGPublicKey is a representation of a GnuPG public key",
      "properties": {
        "fingerprint": {
          "type": "string",
          "title": "Fingerprint is the fingerprint of the key"
        },
        "keyData": {
          "type": "string",
          "title": "KeyData holds the raw key data, in base64 encoded format"
        },
        "keyID": {
          "type": "string",
          "title": "KeyID specifies the key ID, in hexadecimal string format"
        },
        "owner": {
          "type": "string",
          "title": "Owner holds the owner identification, e.g. a name and e-mail address"
        },
        "subType": {
          "type": "string",
          "title": "SubType holds the key's subtype (e.g. rsa4096)"
        },
        "trust": {
          "type": "string",
          "title": "Trust holds the level of trust assigned to this key"
        }
      }
    },
    "v1alpha1GnuPGPublicKeyList": {
      "type": "object",
      "title": "GnuPGPublicKeyList is a collection of GnuPGPublicKey objects",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1GnuPGPublicKey"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1HealthStatus": {
      "type": "object",
      "title": "HealthStatus contains information about the currently observed health state of a resource",
      "properties": {
        "lastTransitionTime": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "type": "string",
          "title": "Message is a human-readable informational message describing the health status"
        },
        "status": {
          "type": "string",
          "title": "Status holds the status code of the resource"
        }
      }
    },
    "v1alpha1HelmFileParameter": {
      "type": "object",
      "title": "HelmFileParameter is a file parameter that's passed to helm template during manifest generation",
      "properties": {
        "name": {
          "type": "string",
          "title": "Name is the name of the Helm parameter"
        },
        "path": {
          "type": "string",
          "title": "Path is the path to the file containing the values for the Helm parameter"
        }
      }
    },
    "v1alpha1HelmParameter": {
      "type": "object",
      "title": "HelmParameter is a parameter that's passed to helm template during manifest generation",
      "properties": {
        "forceString": {
          "type": "boolean",
          "title": "ForceString determines whether to tell Helm to interpret booleans and numbers as strings"
        },
        "name": {
          "type": "string",
          "title": "Name is the name of the Helm parameter"
        },
        "value": {
          "type": "string",
          "title": "Value is the value for the Helm parameter"
        }
      }
    },
    "v1alpha1HostInfo": {
      "description": "HostInfo holds metadata and resource usage metrics for a specific host in the cluster.",
      "type": "object",
      "properties": {
        "labels": {
          "description": "Labels holds the labels attached to the host.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "description": "Name is the hostname or node name in the Kubernetes cluster.",
          "type": "string"
        },
        "resourcesInfo": {
          "description": "ResourcesInfo provides a list of resource usage details for different resource types on this host.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1HostResourceInfo"
          }
        },
        "systemInfo": {
          "$ref": "#/definitions/v1NodeSystemInfo"
        }
      }
    },
    "v1alpha1HostResourceInfo": {
      "description": "HostResourceInfo represents resource usage details for a specific resource type on a host.",
      "type": "object",
      "properties": {
        "capacity": {
          "description": "Capacity represents the total available capacity of this resource on the host.",
          "type": "integer",
          "format": "int64"
        },
        "requestedByApp": {
          "description": "RequestedByApp indicates the total amount of this resource requested by the application running on the host.",
          "type": "integer",
          "format": "int64"
        },
        "requestedByNeighbors": {
          "description": "RequestedByNeighbors indicates the total amount of this resource requested by other workloads on the same host.",
          "type": "integer",
          "format": "int64"
        },
        "resourceName": {
          "description": "ResourceName specifies the type of resource (e.g., CPU, memory, storage).",
          "type": "string"
        }
      }
    },
    "v1alpha1HydrateOperation": {
      "type": "object",
      "title": "HydrateOperation contains information about the most recent hydrate operation",
      "properties": {
        "drySHA": {
          "type": "string",
          "title": "DrySHA holds the resolved revision (sha) of the dry source as of the most recent reconciliation"
        },
        "finishedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "hydratedSHA": {
          "type": "string",
          "title": "HydratedSHA holds the resolved revision (sha) of the hydrated source as of the most recent reconciliation"
        },
        "message": {
          "type": "string",
          "title": "Message contains a message describing the current status of the hydrate operation"
        },
        "phase": {
          "type": "string",
          "title": "Phase indicates the status of the hydrate operation"
        },
        "sourceHydrator": {
          "$ref": "#/definitions/v1alpha1SourceHydrator"
        },
        "startedAt": {
          "$ref": "#/definitions/v1Time"
        }
      }
    },
    "v1alpha1HydrateTo": {
      "description": "HydrateTo specifies a location to which hydrated manifests should be pushed as a \"staging area\" before being moved to\nthe SyncSource. The RepoURL and Path are assumed based on the associated SyncSource config in the SourceHydrator.",
      "type": "object",
      "properties": {
        "targetBranch": {
          "type": "string",
          "title": "TargetBranch is the branch to which hydrated manifests should be committed"
        }
      }
    },
    "v1alpha1Info": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      }
    },
    "v1alpha1InfoItem": {
      "type": "object",
      "title": "InfoItem contains arbitrary, human readable information about an application",
      "properties": {
        "name": {
          "description": "Name is a human readable title for this piece of information.",
          "type": "string"
        },
        "value": {
          "description": "Value is human readable content.",
          "type": "string"
        }
      }
    },
    "v1alpha1JWTToken": {
      "type": "object",
      "title": "JWTToken holds the issuedAt and expiresAt values of a token",
      "properties": {
        "exp": {
          "type": "integer",
          "format": "int64"
        },
        "iat": {
          "type": "integer",
          "format": "int64"
        },
        "id": {
          "type": "string"
        }
      }
    },
    "v1alpha1JWTTokens": {
      "type": "object",
      "title": "JWTTokens represents a list of JWT tokens",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1JWTToken"
          }
        }
      }
    },
    "v1alpha1JsonnetVar": {
      "type": "object",
      "title": "JsonnetVar represents a variable to be passed to jsonnet during manifest generation",
      "properties": {
        "code": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      }
    },
    "v1alpha1KnownTypeField": {
      "description": "KnownTypeField contains a mapping between a Custom Resource Definition (CRD) field\nand a well-known Kubernetes type. This mapping is primarily used for unit conversions\nin resources where the type is not explicitly defined (e.g., converting \"0.1\" to \"100m\" for CPU requests).",
      "type": "object",
      "properties": {
        "field": {
          "type": "string",
          "title": "Field represents the JSON path to the specific field in the CRD that requires type conversion.\nExample: \"spec.resources.requests.cpu\""
        },
        "type": {
          "description": "Type specifies the expected Kubernetes type for the field, such as \"cpu\" or \"memory\".\nThis helps in converting values between different formats (e.g., \"0.1\" to \"100m\" for CPU).",
          "type": "string"
        }
      }
    },
    "v1alpha1KustomizeGvk": {
      "type": "object",
      "properties": {
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      }
    },
    "v1alpha1KustomizeOptions": {
      "type": "object",
      "title": "KustomizeOptions are options for kustomize to use when building manifests",
      "properties": {
        "binaryPath": {
          "description": "Deprecated: Use settings.Settings instead. See: settings.Settings.KustomizeVersions.\nIf this field is set, it will be used as the Kustomize binary path.\nOtherwise, Versions is used.",
          "type": "string",
          "title": "BinaryPath holds optional path to kustomize binary"
        },
        "buildOptions": {
          "type": "string",
          "title": "BuildOptions is a string of build parameters to use when calling `kustomize build`"
        },
        "versions": {
          "description": "Versions is a list of Kustomize versions and their corresponding binary paths and build options.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1KustomizeVersion"
          }
        }
      }
    },
    "v1alpha1KustomizePatch": {
      "type": "object",
      "properties": {
        "options": {
          "type": "object",
          "additionalProperties": {
            "type": "boolean"
          }
        },
        "patch": {
          "type": "string"
        },
        "path": {
          "type": "string"
        },
        "target": {
          "$ref": "#/definitions/v1alpha1KustomizeSelector"
        }
      }
    },
    "v1alpha1KustomizeReplica": {
      "type": "object",
      "properties": {
        "count": {
          "$ref": "#/definitions/intstrIntOrString"
        },
        "name": {
          "type": "string",
          "title": "Name of Deployment or StatefulSet"
        }
      }
    },
    "v1alpha1KustomizeResId": {
      "type": "object",
      "properties": {
        "gvk": {
          "$ref": "#/definitions/v1alpha1KustomizeGvk"
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        }
      }
    },
    "v1alpha1KustomizeSelector": {
      "type": "object",
      "properties": {
        "annotationSelector": {
          "type": "string"
        },
        "labelSelector": {
          "type": "string"
        },
        "resId": {
          "$ref": "#/definitions/v1alpha1KustomizeResId"
        }
      }
    },
    "v1alpha1KustomizeVersion": {
      "type": "object",
      "title": "KustomizeVersion holds information about additional Kustomize versions",
      "properties": {
        "buildOptions": {
          "type": "string",
          "title": "BuildOptions that are specific to a Kustomize version"
        },
        "name": {
          "type": "string",
          "title": "Name holds Kustomize version name"
        },
        "path": {
          "type": "string",
          "title": "Path holds the corresponding binary path"
        }
      }
    },
    "v1alpha1ListGenerator": {
      "type": "object",
      "title": "ListGenerator include items info",
      "properties": {
        "elements": {
          "type": "array",
          "title": "+kubebuilder:validation:Optional",
          "items": {
            "$ref": "#/definitions/v1JSON"
          }
        },
        "elementsYaml": {
          "type": "string"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        }
      }
    },
    "v1alpha1ManagedNamespaceMetadata": {
      "type": "object",
      "properties": {
        "annotations": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1MatrixGenerator": {
      "description": "MatrixGenerator generates the cartesian product of two sets of parameters. The parameters are defined by two nested\ngenerators.",
      "type": "object",
      "properties": {
        "generators": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetNestedGenerator"
          }
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        }
      }
    },
    "v1alpha1MergeGenerator": {
      "description": "MergeGenerator merges the output of two or more generators. Where the values for all specified merge keys are equal\nbetween two sets of generated parameters, the parameter sets will be merged with the parameters from the latter\ngenerator taking precedence. Parameter sets with merge keys not present in the base generator's params will be\nignored.\nFor example, if the first generator produced [{a: '1', b: '2'}, {c: '1', d: '1'}] and the second generator produced\n[{'a': 'override'}], the united parameters for merge keys = ['a'] would be\n[{a: 'override', b: '1'}, {c: '1', d: '1'}].\n\nMergeGenerator supports template overriding. If a MergeGenerator is one of multiple top-level generators, its\ntemplate will be merged with the top-level generator before the parameters are applied.",
      "type": "object",
      "properties": {
        "generators": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSetNestedGenerator"
          }
        },
        "mergeKeys": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        }
      }
    },
    "v1alpha1OCIMetadata": {
      "type": "object",
      "title": "OCIMetadata contains metadata for a specific revision in an OCI repository",
      "properties": {
        "authors": {
          "type": "string"
        },
        "createdAt": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "docsUrl": {
          "type": "string"
        },
        "imageUrl": {
          "type": "string"
        },
        "sourceUrl": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      }
    },
    "v1alpha1Operation": {
      "type": "object",
      "title": "Operation contains information about a requested or running operation",
      "properties": {
        "info": {
          "type": "array",
          "title": "Info is a list of informational items for this operation",
          "items": {
            "$ref": "#/definitions/v1alpha1Info"
          }
        },
        "initiatedBy": {
          "$ref": "#/definitions/v1alpha1OperationInitiator"
        },
        "retry": {
          "$ref": "#/definitions/v1alpha1RetryStrategy"
        },
        "sync": {
          "$ref": "#/definitions/v1alpha1SyncOperation"
        }
      }
    },
    "v1alpha1OperationInitiator": {
      "type": "object",
      "title": "OperationInitiator contains information about the initiator of an operation",
      "properties": {
        "automated": {
          "description": "Automated is set to true if operation was initiated automatically by the application controller.",
          "type": "boolean"
        },
        "username": {
          "type": "string",
          "title": "Username contains the name of a user who started operation"
        }
      }
    },
    "v1alpha1OperationState": {
      "type": "object",
      "title": "OperationState contains information about state of a running operation",
      "properties": {
        "finishedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "description": "Message holds any pertinent messages when attempting to perform operation (typically errors).",
          "type": "string"
        },
        "operation": {
          "$ref": "#/definitions/v1alpha1Operation"
        },
        "phase": {
          "type": "string",
          "title": "Phase is the current phase of the operation"
        },
        "retryCount": {
          "type": "integer",
          "format": "int64",
          "title": "RetryCount contains time of operation retries"
        },
        "startedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "syncResult": {
          "$ref": "#/definitions/v1alpha1SyncOperationResult"
        }
      }
    },
    "v1alpha1OrphanedResourceKey": {
      "type": "object",
      "title": "OrphanedResourceKey is a reference to a resource to be ignored from",
      "properties": {
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "v1alpha1OrphanedResourcesMonitorSettings": {
      "type": "object",
      "title": "OrphanedResourcesMonitorSettings holds settings of orphaned resources monitoring",
      "properties": {
        "ignore": {
          "type": "array",
          "title": "Ignore contains a list of resources that are to be excluded from orphaned resources monitoring",
          "items": {
            "$ref": "#/definitions/v1alpha1OrphanedResourceKey"
          }
        },
        "warn": {
          "type": "boolean",
          "title": "Warn indicates if warning condition should be created for apps which have orphaned resources"
        }
      }
    },
    "v1alpha1OverrideIgnoreDiff": {
      "type": "object",
      "title": "OverrideIgnoreDiff contains configurations about how fields should be ignored during diffs between\nthe desired state and live state",
      "properties": {
        "jSONPointers": {
          "type": "array",
          "title": "JSONPointers is a JSON path list following the format defined in RFC4627 (https://datatracker.ietf.org/doc/html/rfc6902#section-3)",
          "items": {
            "type": "string"
          }
        },
        "jqPathExpressions": {
          "type": "array",
          "title": "JQPathExpressions is a JQ path list that will be evaludated during the diff process",
          "items": {
            "type": "string"
          }
        },
        "managedFieldsManagers": {
          "type": "array",
          "title": "ManagedFieldsManagers is a list of trusted managers. Fields mutated by those managers will take precedence over the\ndesired state defined in the SCM and won't be displayed in diffs",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1PluginConfigMapRef": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "title": "Name of the ConfigMap"
        }
      }
    },
    "v1alpha1PluginGenerator": {
      "description": "PluginGenerator defines connection info specific to Plugin.",
      "type": "object",
      "properties": {
        "configMapRef": {
          "$ref": "#/definitions/v1alpha1PluginConfigMapRef"
        },
        "input": {
          "$ref": "#/definitions/v1alpha1PluginInput"
        },
        "requeueAfterSeconds": {
          "description": "RequeueAfterSeconds determines how long the ApplicationSet controller will wait before reconciling the ApplicationSet again.",
          "type": "integer",
          "format": "int64"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "description": "Values contains key/value pairs which are passed directly as parameters to the template. These values will not be\nsent as parameters to the plugin.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1PluginInput": {
      "type": "object",
      "properties": {
        "parameters": {
          "description": "Parameters contains the information to pass to the plugin. It is a map. The keys must be strings, and the\nvalues can be any type.",
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/v1JSON"
          }
        }
      }
    },
    "v1alpha1ProjectRole": {
      "type": "object",
      "title": "ProjectRole represents a role that has access to a project",
      "properties": {
        "description": {
          "type": "string",
          "title": "Description is a description of the role"
        },
        "groups": {
          "type": "array",
          "title": "Groups are a list of OIDC group claims bound to this role",
          "items": {
            "type": "string"
          }
        },
        "jwtTokens": {
          "type": "array",
          "title": "JWTTokens are a list of generated JWT tokens bound to this role",
          "items": {
            "$ref": "#/definitions/v1alpha1JWTToken"
          }
        },
        "name": {
          "type": "string",
          "title": "Name is a name for this role"
        },
        "policies": {
          "type": "array",
          "title": "Policies Stores a list of casbin formatted strings that define access policies for the role in the project",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1PullRequestGenerator": {
      "description": "PullRequestGenerator defines a generator that scrapes a PullRequest API to find candidate pull requests.",
      "type": "object",
      "properties": {
        "azuredevops": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorAzureDevOps"
        },
        "bitbucket": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorBitbucket"
        },
        "bitbucketServer": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorBitbucketServer"
        },
        "continueOnRepoNotFoundError": {
          "description": "ContinueOnRepoNotFoundError is a flag to continue the ApplicationSet Pull Request generator parameters generation even if the repository is not found.",
          "type": "boolean"
        },
        "filters": {
          "description": "Filters for which pull requests should be considered.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1PullRequestGeneratorFilter"
          }
        },
        "gitea": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorGitea"
        },
        "github": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorGithub"
        },
        "gitlab": {
          "$ref": "#/definitions/v1alpha1PullRequestGeneratorGitLab"
        },
        "requeueAfterSeconds": {
          "description": "Standard parameters.",
          "type": "integer",
          "format": "int64"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "title": "Values contains key/value pairs which are passed directly as parameters to the template",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1PullRequestGeneratorAzureDevOps": {
      "description": "PullRequestGeneratorAzureDevOps defines connection info specific to AzureDevOps.",
      "type": "object",
      "properties": {
        "api": {
          "description": "The Azure DevOps API URL to talk to. If blank, use https://dev.azure.com/.",
          "type": "string"
        },
        "labels": {
          "type": "array",
          "title": "Labels is used to filter the PRs that you want to target",
          "items": {
            "type": "string"
          }
        },
        "organization": {
          "description": "Azure DevOps org to scan. Required.",
          "type": "string"
        },
        "project": {
          "description": "Azure DevOps project name to scan. Required.",
          "type": "string"
        },
        "repo": {
          "description": "Azure DevOps repo name to scan. Required.",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1PullRequestGeneratorBitbucket": {
      "description": "PullRequestGeneratorBitbucket defines connection info specific to Bitbucket.",
      "type": "object",
      "properties": {
        "api": {
          "description": "The Bitbucket REST API URL to talk to. If blank, uses https://api.bitbucket.org/2.0.",
          "type": "string"
        },
        "basicAuth": {
          "$ref": "#/definitions/v1alpha1BasicAuthBitbucketServer"
        },
        "bearerToken": {
          "$ref": "#/definitions/v1alpha1BearerTokenBitbucketCloud"
        },
        "owner": {
          "description": "Workspace to scan. Required.",
          "type": "string"
        },
        "repo": {
          "description": "Repo name to scan. Required.",
          "type": "string"
        }
      }
    },
    "v1alpha1PullRequestGeneratorBitbucketServer": {
      "description": "PullRequestGeneratorBitbucketServer defines connection info specific to BitbucketServer.",
      "type": "object",
      "properties": {
        "api": {
          "description": "The Bitbucket REST API URL to talk to e.g. https://bitbucket.org/rest Required.",
          "type": "string"
        },
        "basicAuth": {
          "$ref": "#/definitions/v1alpha1BasicAuthBitbucketServer"
        },
        "bearerToken": {
          "$ref": "#/definitions/v1alpha1BearerTokenBitbucket"
        },
        "caRef": {
          "$ref": "#/definitions/v1alpha1ConfigMapKeyRef"
        },
        "insecure": {
          "type": "boolean",
          "title": "Allow self-signed TLS / Certificates; default: false"
        },
        "project": {
          "description": "Project to scan. Required.",
          "type": "string"
        },
        "repo": {
          "description": "Repo name to scan. Required.",
          "type": "string"
        }
      }
    },
    "v1alpha1PullRequestGeneratorFilter": {
      "description": "PullRequestGeneratorFilter is a single pull request filter.\nIf multiple filter types are set on a single struct, they will be AND'd together. All filters must\npass for a pull request to be included.",
      "type": "object",
      "properties": {
        "branchMatch": {
          "type": "string"
        },
        "targetBranchMatch": {
          "type": "string"
        },
        "titleMatch": {
          "type": "string"
        }
      }
    },
    "v1alpha1PullRequestGeneratorGitLab": {
      "description": "PullRequestGeneratorGitLab defines connection info specific to GitLab.",
      "type": "object",
      "properties": {
        "api": {
          "description": "The GitLab API URL to talk to. If blank, uses https://gitlab.com/.",
          "type": "string"
        },
        "caRef": {
          "$ref": "#/definitions/v1alpha1ConfigMapKeyRef"
        },
        "insecure": {
          "type": "boolean",
          "title": "Skips validating the SCM provider's TLS certificate - useful for self-signed certificates.; default: false"
        },
        "labels": {
          "type": "array",
          "title": "Labels is used to filter the MRs that you want to target",
          "items": {
            "type": "string"
          }
        },
        "project": {
          "description": "GitLab project to scan. Required.",
          "type": "string"
        },
        "pullRequestState": {
          "description": "PullRequestState is an additional MRs filter to get only those with a certain state. Default: \"\" (all states).\nValid values: opened, closed, merged, locked\".",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1PullRequestGeneratorGitea": {
      "description": "PullRequestGeneratorGitea defines connection info specific to Gitea.",
      "type": "object",
      "properties": {
        "api": {
          "type": "string",
          "title": "The Gitea API URL to talk to. Required"
        },
        "insecure": {
          "description": "Allow insecure tls, for self-signed certificates; default: false.",
          "type": "boolean"
        },
        "labels": {
          "type": "array",
          "title": "Labels is used to filter the PRs that you want to target",
          "items": {
            "type": "string"
          }
        },
        "owner": {
          "description": "Gitea org or user to scan. Required.",
          "type": "string"
        },
        "repo": {
          "description": "Gitea repo name to scan. Required.",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1PullRequestGeneratorGithub": {
      "description": "PullRequestGenerator defines connection info specific to GitHub.",
      "type": "object",
      "properties": {
        "api": {
          "description": "The GitHub API URL to talk to. If blank, use https://api.github.com/.",
          "type": "string"
        },
        "appSecretName": {
          "description": "AppSecretName is a reference to a GitHub App repo-creds secret with permission to access pull requests.",
          "type": "string"
        },
        "labels": {
          "type": "array",
          "title": "Labels is used to filter the PRs that you want to target",
          "items": {
            "type": "string"
          }
        },
        "owner": {
          "description": "GitHub org or user to scan. Required.",
          "type": "string"
        },
        "repo": {
          "description": "GitHub repo name to scan. Required.",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1RepoCreds": {
      "type": "object",
      "title": "RepoCreds holds the definition for repository credentials",
      "properties": {
        "bearerToken": {
          "type": "string",
          "title": "BearerToken contains the bearer token used for Git BitBucket Data Center auth at the repo server"
        },
        "enableOCI": {
          "type": "boolean",
          "title": "EnableOCI specifies whether helm-oci support should be enabled for this repo"
        },
        "forceHttpBasicAuth": {
          "type": "boolean",
          "title": "ForceHttpBasicAuth specifies whether Argo CD should attempt to force basic auth for HTTP connections"
        },
        "gcpServiceAccountKey": {
          "type": "string",
          "title": "GCPServiceAccountKey specifies the service account key in JSON format to be used for getting credentials to Google Cloud Source repos"
        },
        "githubAppEnterpriseBaseUrl": {
          "type": "string",
          "title": "GithubAppEnterpriseBaseURL specifies the GitHub API URL for GitHub app authentication. If empty will default to https://api.github.com"
        },
        "githubAppID": {
          "type": "integer",
          "format": "int64",
          "title": "GithubAppId specifies the Github App ID of the app used to access the repo for GitHub app authentication"
        },
        "githubAppInstallationID": {
          "type": "integer",
          "format": "int64",
          "title": "GithubAppInstallationId specifies the ID of the installed GitHub App for GitHub app authentication"
        },
        "githubAppPrivateKey": {
          "type": "string",
          "title": "GithubAppPrivateKey specifies the private key PEM data for authentication via GitHub app"
        },
        "insecureOCIForceHttp": {
          "description": "InsecureOCIForceHttp specifies whether the connection to the repository uses TLS at _all_. If true, no TLS. This flag is applicable for OCI repos only.",
          "type": "boolean"
        },
        "noProxy": {
          "type": "string",
          "title": "NoProxy specifies a list of targets where the proxy isn't used, applies only in cases where the proxy is applied"
        },
        "password": {
          "type": "string",
          "title": "Password for authenticating at the repo server"
        },
        "proxy": {
          "type": "string",
          "title": "Proxy specifies the HTTP/HTTPS proxy used to access repos at the repo server"
        },
        "sshPrivateKey": {
          "type": "string",
          "title": "SSHPrivateKey contains the private key data for authenticating at the repo server using SSH (only Git repos)"
        },
        "tlsClientCertData": {
          "type": "string",
          "title": "TLSClientCertData specifies the TLS client cert data for authenticating at the repo server"
        },
        "tlsClientCertKey": {
          "type": "string",
          "title": "TLSClientCertKey specifies the TLS client cert key for authenticating at the repo server"
        },
        "type": {
          "description": "Type specifies the type of the repoCreds. Can be either \"git\" or \"helm. \"git\" is assumed if empty or absent.",
          "type": "string"
        },
        "url": {
          "type": "string",
          "title": "URL is the URL to which these credentials match"
        },
        "useAzureWorkloadIdentity": {
          "type": "boolean",
          "title": "UseAzureWorkloadIdentity specifies whether to use Azure Workload Identity for authentication"
        },
        "username": {
          "type": "string",
          "title": "Username for authenticating at the repo server"
        }
      }
    },
    "v1alpha1RepoCredsList": {
      "description": "RepositoryList is a collection of Repositories.",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1RepoCreds"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1Repository": {
      "type": "object",
      "title": "Repository is a repository holding application configurations",
      "properties": {
        "bearerToken": {
          "type": "string",
          "title": "BearerToken contains the bearer token used for Git BitBucket Data Center auth at the repo server"
        },
        "connectionState": {
          "$ref": "#/definitions/v1alpha1ConnectionState"
        },
        "enableLfs": {
          "description": "EnableLFS specifies whether git-lfs support should be enabled for this repo. Only valid for Git repositories.",
          "type": "boolean"
        },
        "enableOCI": {
          "type": "boolean",
          "title": "EnableOCI specifies whether helm-oci support should be enabled for this repo"
        },
        "forceHttpBasicAuth": {
          "type": "boolean",
          "title": "ForceHttpBasicAuth specifies whether Argo CD should attempt to force basic auth for HTTP connections"
        },
        "gcpServiceAccountKey": {
          "type": "string",
          "title": "GCPServiceAccountKey specifies the service account key in JSON format to be used for getting credentials to Google Cloud Source repos"
        },
        "githubAppEnterpriseBaseUrl": {
          "type": "string",
          "title": "GithubAppEnterpriseBaseURL specifies the base URL of GitHub Enterprise installation. If empty will default to https://api.github.com"
        },
        "githubAppID": {
          "type": "integer",
          "format": "int64",
          "title": "GithubAppId specifies the ID of the GitHub app used to access the repo"
        },
        "githubAppInstallationID": {
          "type": "integer",
          "format": "int64",
          "title": "GithubAppInstallationId specifies the installation ID of the GitHub App used to access the repo"
        },
        "githubAppPrivateKey": {
          "type": "string",
          "title": "Github App Private Key PEM data"
        },
        "inheritedCreds": {
          "type": "boolean",
          "title": "Whether credentials were inherited from a credential set"
        },
        "insecure": {
          "type": "boolean",
          "title": "Insecure specifies whether the connection to the repository ignores any errors when verifying TLS certificates or SSH host keys"
        },
        "insecureIgnoreHostKey": {
          "type": "boolean",
          "title": "InsecureIgnoreHostKey should not be used anymore, Insecure is favoured\nUsed only for Git repos"
        },
        "insecureOCIForceHttp": {
          "description": "InsecureOCIForceHttp specifies whether the connection to the repository uses TLS at _all_. If true, no TLS. This flag is applicable for OCI repos only.",
          "type": "boolean"
        },
        "name": {
          "type": "string",
          "title": "Name specifies a name to be used for this repo. Only used with Helm repos"
        },
        "noProxy": {
          "type": "string",
          "title": "NoProxy specifies a list of targets where the proxy isn't used, applies only in cases where the proxy is applied"
        },
        "password": {
          "type": "string",
          "title": "Password contains the password or PAT used for authenticating at the remote repository"
        },
        "project": {
          "type": "string",
          "title": "Reference between project and repository that allows it to be automatically added as an item inside SourceRepos project entity"
        },
        "proxy": {
          "type": "string",
          "title": "Proxy specifies the HTTP/HTTPS proxy used to access the repo"
        },
        "repo": {
          "type": "string",
          "title": "Repo contains the URL to the remote repository"
        },
        "sshPrivateKey": {
          "description": "SSHPrivateKey contains the PEM data for authenticating at the repo server. Only used with Git repos.",
          "type": "string"
        },
        "tlsClientCertData": {
          "type": "string",
          "title": "TLSClientCertData contains a certificate in PEM format for authenticating at the repo server"
        },
        "tlsClientCertKey": {
          "type": "string",
          "title": "TLSClientCertKey contains a private key in PEM format for authenticating at the repo server"
        },
        "type": {
          "description": "Type specifies the type of the repo. Can be either \"git\" or \"helm. \"git\" is assumed if empty or absent.",
          "type": "string"
        },
        "useAzureWorkloadIdentity": {
          "type": "boolean",
          "title": "UseAzureWorkloadIdentity specifies whether to use Azure Workload Identity for authentication"
        },
        "username": {
          "type": "string",
          "title": "Username contains the user name used for authenticating at the remote repository"
        }
      }
    },
    "v1alpha1RepositoryCertificate": {
      "type": "object",
      "title": "A RepositoryCertificate is either SSH known hosts entry or TLS certificate",
      "properties": {
        "certData": {
          "type": "string",
          "format": "byte",
          "title": "CertData contains the actual certificate data, dependent on the certificate type"
        },
        "certInfo": {
          "type": "string",
          "title": "CertInfo will hold additional certificate info, depdendent on the certificate type (e.g. SSH fingerprint, X509 CommonName)"
        },
        "certSubType": {
          "type": "string",
          "title": "CertSubType specifies the sub type of the cert, i.e. \"ssh-rsa\""
        },
        "certType": {
          "type": "string",
          "title": "CertType specifies the type of the certificate - currently one of \"https\" or \"ssh\""
        },
        "serverName": {
          "type": "string",
          "title": "ServerName specifies the DNS name of the server this certificate is intended for"
        }
      }
    },
    "v1alpha1RepositoryCertificateList": {
      "type": "object",
      "title": "RepositoryCertificateList is a collection of RepositoryCertificates",
      "properties": {
        "items": {
          "type": "array",
          "title": "List of certificates to be processed",
          "items": {
            "$ref": "#/definitions/v1alpha1RepositoryCertificate"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1RepositoryList": {
      "description": "RepositoryList is a collection of Repositories.",
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1Repository"
          }
        },
        "metadata": {
          "$ref": "#/definitions/v1ListMeta"
        }
      }
    },
    "v1alpha1ResourceAction": {
      "description": "ResourceAction represents an individual action that can be performed on a resource.\nIt includes parameters, an optional disabled flag, an icon for display, and a name for the action.",
      "type": "object",
      "properties": {
        "disabled": {
          "description": "Disabled indicates whether the action is disabled.",
          "type": "boolean"
        },
        "displayName": {
          "description": "DisplayName provides a user-friendly name for the action.",
          "type": "string"
        },
        "iconClass": {
          "description": "IconClass specifies the CSS class for the action's icon.",
          "type": "string"
        },
        "name": {
          "description": "Name is the name or identifier for the action.",
          "type": "string"
        },
        "params": {
          "description": "Params contains the parameters required to execute the action.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceActionParam"
          }
        }
      }
    },
    "v1alpha1ResourceActionParam": {
      "description": "ResourceActionParam represents a parameter for a resource action.\nIt includes a name, value, type, and an optional default value for the parameter.",
      "type": "object",
      "properties": {
        "name": {
          "description": "Name is the name of the parameter.",
          "type": "string"
        }
      }
    },
    "v1alpha1ResourceDiff": {
      "description": "ResourceDiff holds the diff between a live and target resource object in Argo CD.\nIt is used to compare the desired state (from Git/Helm) with the actual state in the cluster.",
      "type": "object",
      "properties": {
        "diff": {
          "description": "Diff contains the JSON patch representing the difference between the live and target resource.\nDeprecated: Use NormalizedLiveState and PredictedLiveState instead to compute differences.",
          "type": "string"
        },
        "group": {
          "description": "Group represents the API group of the resource (e.g., \"apps\" for Deployments).",
          "type": "string"
        },
        "hook": {
          "description": "Hook indicates whether this resource is a hook resource (e.g., pre-sync or post-sync hooks).",
          "type": "boolean"
        },
        "kind": {
          "description": "Kind represents the Kubernetes resource kind (e.g., \"Deployment\", \"Service\").",
          "type": "string"
        },
        "liveState": {
          "description": "LiveState contains the JSON-serialized resource manifest of the resource currently running in the cluster.",
          "type": "string"
        },
        "modified": {
          "description": "Modified indicates whether the live resource has changes compared to the target resource.",
          "type": "boolean"
        },
        "name": {
          "description": "Name is the name of the resource.",
          "type": "string"
        },
        "namespace": {
          "description": "Namespace specifies the namespace where the resource exists.",
          "type": "string"
        },
        "normalizedLiveState": {
          "description": "NormalizedLiveState contains the JSON-serialized live resource state after applying normalizations.\nNormalizations may include ignoring irrelevant fields like timestamps or defaults applied by Kubernetes.",
          "type": "string"
        },
        "predictedLiveState": {
          "description": "PredictedLiveState contains the JSON-serialized resource state that Argo CD predicts based on the\ncombination of the normalized live state and the desired target state.",
          "type": "string"
        },
        "resourceVersion": {
          "description": "ResourceVersion is the Kubernetes resource version, which helps in tracking changes.",
          "type": "string"
        },
        "targetState": {
          "description": "TargetState contains the JSON-serialized resource manifest as defined in the Git/Helm repository.",
          "type": "string"
        }
      }
    },
    "v1alpha1ResourceIgnoreDifferences": {
      "description": "ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.",
      "type": "object",
      "properties": {
        "group": {
          "type": "string"
        },
        "jqPathExpressions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "jsonPointers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "kind": {
          "type": "string"
        },
        "managedFieldsManagers": {
          "type": "array",
          "title": "ManagedFieldsManagers is a list of trusted managers. Fields mutated by those managers will take precedence over the\ndesired state defined in the SCM and won't be displayed in diffs",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        }
      }
    },
    "v1alpha1ResourceNetworkingInfo": {
      "description": "ResourceNetworkingInfo holds networking-related information for a resource.",
      "type": "object",
      "properties": {
        "externalURLs": {
          "description": "ExternalURLs holds a list of URLs that should be accessible externally.\nThis field is typically populated for Ingress resources based on their hostname rules.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ingress": {
          "description": "Ingress provides information about external access points (e.g., load balancer ingress) for this resource.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1LoadBalancerIngress"
          }
        },
        "labels": {
          "description": "Labels holds the labels associated with this networking resource.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "targetLabels": {
          "description": "TargetLabels represents labels associated with the target resources that this resource communicates with.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "targetRefs": {
          "description": "TargetRefs contains references to other resources that this resource interacts with, such as Services or Pods.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceRef"
          }
        }
      }
    },
    "v1alpha1ResourceNode": {
      "description": "ResourceNode contains information about a live Kubernetes resource and its relationships with other resources.",
      "type": "object",
      "properties": {
        "createdAt": {
          "$ref": "#/definitions/v1Time"
        },
        "health": {
          "$ref": "#/definitions/v1alpha1HealthStatus"
        },
        "images": {
          "description": "Images lists container images associated with the resource.\nThis is primarily useful for pods and other workload resources.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "info": {
          "description": "Info provides additional metadata or annotations about the resource.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1InfoItem"
          }
        },
        "networkingInfo": {
          "$ref": "#/definitions/v1alpha1ResourceNetworkingInfo"
        },
        "parentRefs": {
          "description": "ParentRefs lists the parent resources that reference this resource.\nThis helps in understanding ownership and hierarchical relationships.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceRef"
          }
        },
        "resourceVersion": {
          "description": "ResourceVersion indicates the version of the resource, used to track changes.",
          "type": "string"
        }
      },
      "allOf": [
        {
          "$ref": "#/definitions/v1alpha1ResourceRef"
        }
      ]
    },
    "v1alpha1ResourceOverride": {
      "type": "object",
      "title": "ResourceOverride holds configuration to customize resource diffing and health assessment",
      "properties": {
        "actions": {
          "description": "Actions defines the set of actions that can be performed on the resource, as a Lua script.",
          "type": "string"
        },
        "healthLua": {
          "description": "HealthLua contains a Lua script that defines custom health checks for the resource.",
          "type": "string"
        },
        "ignoreDifferences": {
          "$ref": "#/definitions/v1alpha1OverrideIgnoreDiff"
        },
        "ignoreResourceUpdates": {
          "$ref": "#/definitions/v1alpha1OverrideIgnoreDiff"
        },
        "knownTypeFields": {
          "description": "KnownTypeFields lists fields for which unit conversions should be applied.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1KnownTypeField"
          }
        },
        "useOpenLibs": {
          "description": "UseOpenLibs indicates whether to use open-source libraries for the resource.",
          "type": "boolean"
        }
      }
    },
    "v1alpha1ResourceRef": {
      "type": "object",
      "title": "ResourceRef includes fields which uniquely identify a resource",
      "properties": {
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        },
        "uid": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      }
    },
    "v1alpha1ResourceResult": {
      "type": "object",
      "title": "ResourceResult holds the operation result details of a specific resource",
      "properties": {
        "group": {
          "type": "string",
          "title": "Group specifies the API group of the resource"
        },
        "hookPhase": {
          "description": "HookPhase contains the state of any operation associated with this resource OR hook\nThis can also contain values for non-hook resources.",
          "type": "string"
        },
        "hookType": {
          "type": "string",
          "title": "HookType specifies the type of the hook. Empty for non-hook resources"
        },
        "images": {
          "type": "array",
          "title": "Images contains the images related to the ResourceResult",
          "items": {
            "type": "string"
          }
        },
        "kind": {
          "type": "string",
          "title": "Kind specifies the API kind of the resource"
        },
        "message": {
          "type": "string",
          "title": "Message contains an informational or error message for the last sync OR operation"
        },
        "name": {
          "type": "string",
          "title": "Name specifies the name of the resource"
        },
        "namespace": {
          "type": "string",
          "title": "Namespace specifies the target namespace of the resource"
        },
        "status": {
          "type": "string",
          "title": "Status holds the final result of the sync. Will be empty if the resources is yet to be applied/pruned and is always zero-value for hooks"
        },
        "syncPhase": {
          "type": "string",
          "title": "SyncPhase indicates the particular phase of the sync that this result was acquired in"
        },
        "version": {
          "type": "string",
          "title": "Version specifies the API version of the resource"
        }
      }
    },
    "v1alpha1RetryStrategy": {
      "type": "object",
      "title": "RetryStrategy contains information about the strategy to apply when a sync failed",
      "properties": {
        "backoff": {
          "$ref": "#/definitions/v1alpha1Backoff"
        },
        "limit": {
          "description": "Limit is the maximum number of attempts for retrying a failed sync. If set to 0, no retries will be performed.",
          "type": "integer",
          "format": "int64"
        },
        "refresh": {
          "type": "boolean",
          "title": "Refresh indicates if the latest revision should be used on retry instead of the initial one (default: false)"
        }
      }
    },
    "v1alpha1RevisionHistory": {
      "type": "object",
      "title": "RevisionHistory contains history information about a previous sync",
      "properties": {
        "deployStartedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "deployedAt": {
          "$ref": "#/definitions/v1Time"
        },
        "id": {
          "type": "integer",
          "format": "int64",
          "title": "ID is an auto incrementing identifier of the RevisionHistory"
        },
        "initiatedBy": {
          "$ref": "#/definitions/v1alpha1OperationInitiator"
        },
        "revision": {
          "type": "string",
          "title": "Revision holds the revision the sync was performed against"
        },
        "revisions": {
          "type": "array",
          "title": "Revisions holds the revision of each source in sources field the sync was performed against",
          "items": {
            "type": "string"
          }
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sources": {
          "type": "array",
          "title": "Sources is a reference to the application sources used for the sync operation",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSource"
          }
        }
      }
    },
    "v1alpha1RevisionMetadata": {
      "description": "RevisionMetadata contains metadata for a specific revision in a Git repository. This field is used by the\nSource Hydrator feature which may be removed in the future.",
      "type": "object",
      "properties": {
        "author": {
          "type": "string",
          "title": "who authored this revision,\ntypically their name and email, e.g. \"John Doe <john_doe@my-company.com>\",\nbut might not match this example"
        },
        "date": {
          "$ref": "#/definitions/v1Time"
        },
        "message": {
          "description": "Message contains the message associated with the revision, most likely the commit message.",
          "type": "string"
        },
        "references": {
          "description": "References contains references to information that's related to this commit in some way.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1RevisionReference"
          }
        },
        "signatureInfo": {
          "description": "SignatureInfo contains a hint on the signer if the revision was signed with GPG, and signature verification is enabled.",
          "type": "string"
        },
        "tags": {
          "type": "array",
          "title": "Tags specifies any tags currently attached to the revision\nFloating tags can move from one revision to another",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1RevisionReference": {
      "description": "RevisionReference contains a reference to a some information that is related in some way to another commit. For now,\nit supports only references to a commit. In the future, it may support other types of references.",
      "type": "object",
      "properties": {
        "commit": {
          "$ref": "#/definitions/v1alpha1CommitMetadata"
        }
      }
    },
    "v1alpha1SCMProviderGenerator": {
      "description": "SCMProviderGenerator defines a generator that scrapes a SCMaaS API to find candidate repos.",
      "type": "object",
      "properties": {
        "awsCodeCommit": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorAWSCodeCommit"
        },
        "azureDevOps": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorAzureDevOps"
        },
        "bitbucket": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorBitbucket"
        },
        "bitbucketServer": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorBitbucketServer"
        },
        "cloneProtocol": {
          "description": "Which protocol to use for the SCM URL. Default is provider-specific but ssh if possible. Not all providers\nnecessarily support all protocols.",
          "type": "string"
        },
        "filters": {
          "description": "Filters for which repos should be considered.",
          "type": "array",
          "items": {
            "$ref": "#/definitions/v1alpha1SCMProviderGeneratorFilter"
          }
        },
        "gitea": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorGitea"
        },
        "github": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorGithub"
        },
        "gitlab": {
          "$ref": "#/definitions/v1alpha1SCMProviderGeneratorGitlab"
        },
        "requeueAfterSeconds": {
          "description": "Standard parameters.",
          "type": "integer",
          "format": "int64"
        },
        "template": {
          "$ref": "#/definitions/v1alpha1ApplicationSetTemplate"
        },
        "values": {
          "type": "object",
          "title": "Values contains key/value pairs which are passed directly as parameters to the template",
          "additionalProperties": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1SCMProviderGeneratorAWSCodeCommit": {
      "description": "SCMProviderGeneratorAWSCodeCommit defines connection info specific to AWS CodeCommit.",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "region": {
          "description": "Region provides the AWS region to discover repos.\nif not provided, AppSet controller will infer the current region from environment.",
          "type": "string"
        },
        "role": {
          "description": "Role provides the AWS IAM role to assume, for cross-account repo discovery\nif not provided, AppSet controller will use its pod/node identity to discover.",
          "type": "string"
        },
        "tagFilters": {
          "type": "array",
          "title": "TagFilters provides the tag filter(s) for repo discovery",
          "items": {
            "$ref": "#/definitions/v1alpha1TagFilter"
          }
        }
      }
    },
    "v1alpha1SCMProviderGeneratorAzureDevOps": {
      "description": "SCMProviderGeneratorAzureDevOps defines connection info specific to Azure DevOps.",
      "type": "object",
      "properties": {
        "accessTokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        },
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "api": {
          "description": "The URL to Azure DevOps. If blank, use https://dev.azure.com.",
          "type": "string"
        },
        "organization": {
          "description": "Azure Devops organization. Required. E.g. \"my-organization\".",
          "type": "string"
        },
        "teamProject": {
          "description": "Azure Devops team project. Required. E.g. \"my-team\".",
          "type": "string"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorBitbucket": {
      "description": "SCMProviderGeneratorBitbucket defines connection info specific to Bitbucket Cloud (API version 2).",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the main branch.",
          "type": "boolean"
        },
        "appPasswordRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        },
        "owner": {
          "description": "Bitbucket workspace to scan. Required.",
          "type": "string"
        },
        "user": {
          "type": "string",
          "title": "Bitbucket user to use when authenticating.  Should have a \"member\" role to be able to read all repositories and branches.  Required"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorBitbucketServer": {
      "description": "SCMProviderGeneratorBitbucketServer defines connection info specific to Bitbucket Server.",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "api": {
          "description": "The Bitbucket Server REST API URL to talk to. Required.",
          "type": "string"
        },
        "basicAuth": {
          "$ref": "#/definitions/v1alpha1BasicAuthBitbucketServer"
        },
        "bearerToken": {
          "$ref": "#/definitions/v1alpha1BearerTokenBitbucket"
        },
        "caRef": {
          "$ref": "#/definitions/v1alpha1ConfigMapKeyRef"
        },
        "insecure": {
          "type": "boolean",
          "title": "Allow self-signed TLS / Certificates; default: false"
        },
        "project": {
          "description": "Project to scan. Required.",
          "type": "string"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorFilter": {
      "description": "SCMProviderGeneratorFilter is a single repository filter.\nIf multiple filter types are set on a single struct, they will be AND'd together. All filters must\npass for a repo to be included.",
      "type": "object",
      "properties": {
        "branchMatch": {
          "description": "A regex which must match the branch name.",
          "type": "string"
        },
        "labelMatch": {
          "description": "A regex which must match at least one label.",
          "type": "string"
        },
        "pathsDoNotExist": {
          "description": "An array of paths, all of which must not exist.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "pathsExist": {
          "description": "An array of paths, all of which must exist.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "repositoryMatch": {
          "description": "A regex for repo names.",
          "type": "string"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorGitea": {
      "description": "SCMProviderGeneratorGitea defines a connection info specific to Gitea.",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "api": {
          "description": "The Gitea URL to talk to. For example https://gitea.mydomain.com/.",
          "type": "string"
        },
        "insecure": {
          "type": "boolean",
          "title": "Allow self-signed TLS / Certificates; default: false"
        },
        "owner": {
          "description": "Gitea organization or user to scan. Required.",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorGithub": {
      "description": "SCMProviderGeneratorGithub defines connection info specific to GitHub.",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "api": {
          "description": "The GitHub API URL to talk to. If blank, use https://api.github.com/.",
          "type": "string"
        },
        "appSecretName": {
          "description": "AppSecretName is a reference to a GitHub App repo-creds secret.",
          "type": "string"
        },
        "organization": {
          "description": "GitHub org to scan. Required.",
          "type": "string"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        }
      }
    },
    "v1alpha1SCMProviderGeneratorGitlab": {
      "description": "SCMProviderGeneratorGitlab defines connection info specific to Gitlab.",
      "type": "object",
      "properties": {
        "allBranches": {
          "description": "Scan all branches instead of just the default branch.",
          "type": "boolean"
        },
        "api": {
          "description": "The Gitlab API URL to talk to.",
          "type": "string"
        },
        "caRef": {
          "$ref": "#/definitions/v1alpha1ConfigMapKeyRef"
        },
        "group": {
          "description": "Gitlab group to scan. Required.  You can use either the project id (recommended) or the full namespaced path.",
          "type": "string"
        },
        "includeSharedProjects": {
          "type": "boolean",
          "title": "When recursing through subgroups, also include shared Projects (true) or scan only the subgroups under same path (false).  Defaults to \"true\""
        },
        "includeSubgroups": {
          "type": "boolean",
          "title": "Recurse through subgroups (true) or scan only the base group (false).  Defaults to \"false\""
        },
        "insecure": {
          "type": "boolean",
          "title": "Skips validating the SCM provider's TLS certificate - useful for self-signed certificates.; default: false"
        },
        "tokenRef": {
          "$ref": "#/definitions/v1alpha1SecretRef"
        },
        "topic": {
          "description": "Filter repos list based on Gitlab Topic.",
          "type": "string"
        }
      }
    },
    "v1alpha1SecretRef": {
      "description": "Utility struct for a reference to a secret key.",
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "secretName": {
          "type": "string"
        }
      }
    },
    "v1alpha1SignatureKey": {
      "type": "object",
      "title": "SignatureKey is the specification of a key required to verify commit signatures with",
      "properties": {
        "keyID": {
          "type": "string",
          "title": "The ID of the key in hexadecimal notation"
        }
      }
    },
    "v1alpha1SourceHydrator": {
      "description": "SourceHydrator specifies a dry \"don't repeat yourself\" source for manifests, a sync source from which to sync\nhydrated manifests, and an optional hydrateTo location to act as a \"staging\" aread for hydrated manifests.",
      "type": "object",
      "properties": {
        "drySource": {
          "$ref": "#/definitions/v1alpha1DrySource"
        },
        "hydrateTo": {
          "$ref": "#/definitions/v1alpha1HydrateTo"
        },
        "syncSource": {
          "$ref": "#/definitions/v1alpha1SyncSource"
        }
      }
    },
    "v1alpha1SourceHydratorStatus": {
      "type": "object",
      "title": "SourceHydratorStatus contains information about the current state of source hydration",
      "properties": {
        "currentOperation": {
          "$ref": "#/definitions/v1alpha1HydrateOperation"
        },
        "lastSuccessfulOperation": {
          "$ref": "#/definitions/v1alpha1SuccessfulHydrateOperation"
        }
      }
    },
    "v1alpha1SuccessfulHydrateOperation": {
      "type": "object",
      "title": "SuccessfulHydrateOperation contains information about the most recent successful hydrate operation",
      "properties": {
        "drySHA": {
          "type": "string",
          "title": "DrySHA holds the resolved revision (sha) of the dry source as of the most recent reconciliation"
        },
        "hydratedSHA": {
          "type": "string",
          "title": "HydratedSHA holds the resolved revision (sha) of the hydrated source as of the most recent reconciliation"
        },
        "sourceHydrator": {
          "$ref": "#/definitions/v1alpha1SourceHydrator"
        }
      }
    },
    "v1alpha1SyncOperation": {
      "description": "SyncOperation contains details about a sync operation.",
      "type": "object",
      "properties": {
        "autoHealAttemptsCount": {
          "type": "integer",
          "format": "int64",
          "title": "SelfHealAttemptsCount contains the number of auto-heal attempts"
        },
        "dryRun": {
          "type": "boolean",
          "title": "DryRun specifies to perform a `kubectl apply --dry-run` without actually performing the sync"
        },
        "manifests": {
          "type": "array",
          "title": "Manifests is an optional field that overrides sync source with a local directory for development",
          "items": {
            "type": "string"
          }
        },
        "prune": {
          "type": "boolean",
          "title": "Prune specifies to delete resources from the cluster that are no longer tracked in git"
        },
        "resources": {
          "type": "array",
          "title": "Resources describes which resources shall be part of the sync",
          "items": {
            "$ref": "#/definitions/v1alpha1SyncOperationResource"
          }
        },
        "revision": {
          "description": "Revision is the revision (Git) or chart version (Helm) which to sync the application to\nIf omitted, will use the revision specified in app spec.",
          "type": "string"
        },
        "revisions": {
          "description": "Revisions is the list of revision (Git) or chart version (Helm) which to sync each source in sources field for the application to\nIf omitted, will use the revision specified in app spec.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sources": {
          "type": "array",
          "title": "Sources overrides the source definition set in the application.\nThis is typically set in a Rollback operation and is nil during a Sync operation",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSource"
          }
        },
        "syncOptions": {
          "type": "array",
          "title": "SyncOptions provide per-sync sync-options, e.g. Validate=false",
          "items": {
            "type": "string"
          }
        },
        "syncStrategy": {
          "$ref": "#/definitions/v1alpha1SyncStrategy"
        }
      }
    },
    "v1alpha1SyncOperationResource": {
      "description": "SyncOperationResource contains resources to sync.",
      "type": "object",
      "properties": {
        "group": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "namespace": {
          "type": "string"
        }
      }
    },
    "v1alpha1SyncOperationResult": {
      "type": "object",
      "title": "SyncOperationResult represent result of sync operation",
      "properties": {
        "managedNamespaceMetadata": {
          "$ref": "#/definitions/v1alpha1ManagedNamespaceMetadata"
        },
        "resources": {
          "type": "array",
          "title": "Resources contains a list of sync result items for each individual resource in a sync operation",
          "items": {
            "$ref": "#/definitions/v1alpha1ResourceResult"
          }
        },
        "revision": {
          "type": "string",
          "title": "Revision holds the revision this sync operation was performed to"
        },
        "revisions": {
          "type": "array",
          "title": "Revisions holds the revision this sync operation was performed for respective indexed source in sources field",
          "items": {
            "type": "string"
          }
        },
        "source": {
          "$ref": "#/definitions/v1alpha1ApplicationSource"
        },
        "sources": {
          "type": "array",
          "title": "Source records the application source information of the sync, used for comparing auto-sync",
          "items": {
            "$ref": "#/definitions/v1alpha1ApplicationSource"
          }
        }
      }
    },
    "v1alpha1SyncPolicy": {
      "type": "object",
      "title": "SyncPolicy controls when a sync will be performed in response to updates in git",
      "properties": {
        "automated": {
          "$ref": "#/definitions/v1alpha1SyncPolicyAutomated"
        },
        "managedNamespaceMetadata": {
          "$ref": "#/definitions/v1alpha1ManagedNamespaceMetadata"
        },
        "retry": {
          "$ref": "#/definitions/v1alpha1RetryStrategy"
        },
        "syncOptions": {
          "type": "array",
          "title": "Options allow you to specify whole app sync-options",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "v1alpha1SyncPolicyAutomated": {
      "type": "object",
      "title": "SyncPolicyAutomated controls the behavior of an automated sync",
      "properties": {
        "allowEmpty": {
          "type": "boolean",
          "title": "AllowEmpty allows apps have zero live resources (default: false)"
        },
        "enabled": {
          "type": "boolean",
          "title": "Enable allows apps to explicitly control automated sync"
        },
        "prune": {
          "type": "boolean",
          "title": "Prune specifies whether to delete resources from the cluster that are not found in the sources anymore as part of automated sync (default: false)"
        },
        "selfHeal": {
          "type": "boolean",
          "title": "SelfHeal specifies whether to revert resources back to their desired state upon modification in the cluster (default: false)"
        }
      }
    },
    "v1alpha1SyncSource": {
      "description": "SyncSource specifies a location from which hydrated manifests may be synced. RepoURL is assumed based on the\nassociated DrySource config in the SourceHydrator.",
      "type": "object",
      "properties": {
        "path": {
          "description": "Path is a directory path within the git repository where hydrated manifests should be committed to and synced\nfrom. The Path should never point to the root of the repo. If hydrateTo is set, this is just the path from which\nhydrated manifests will be synced.\n\n+kubebuilder:validation:Required\n+kubebuilder:validation:MinLength=1\n+kubebuilder:validation:Pattern=`^.{2,}|[^./]$`",
          "type": "string"
        },
        "targetBranch": {
          "description": "TargetBranch is the branch from which hydrated manifests will be synced.\nIf HydrateTo is not set, this is also the branch to which hydrated manifests are committed.",
          "type": "string"
        }
      }
    },
    "v1alpha1SyncStatus": {
      "type": "object",
      "title": "SyncStatus contains information about the currently observed live and desired states of an application",
      "properties": {
        "comparedTo": {
          "$ref": "#/definitions/v1alpha1ComparedTo"
        },
        "revision": {
          "type": "string",
          "title": "Revision contains information about the revision the comparison has been performed to"
        },
        "revisions": {
          "type": "array",
          "title": "Revisions contains information about the revisions of multiple sources the comparison has been performed to",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "title": "Status is the sync state of the comparison"
        }
      }
    },
    "v1alpha1SyncStrategy": {
      "type": "object",
      "title": "SyncStrategy controls the manner in which a sync is performed",
      "properties": {
        "apply": {
          "$ref": "#/definitions/v1alpha1SyncStrategyApply"
        },
        "hook": {
          "$ref": "#/definitions/v1alpha1SyncStrategyHook"
        }
      }
    },
    "v1alpha1SyncStrategyApply": {
      "type": "object",
      "title": "SyncStrategyApply uses `kubectl apply` to perform the apply",
      "properties": {
        "force": {
          "description": "Force indicates whether or not to supply the --force flag to `kubectl apply`.\nThe --force flag deletes and re-create the resource, when PATCH encounters conflict and has\nretried for 5 times.",
          "type": "boolean"
        }
      }
    },
    "v1alpha1SyncStrategyHook": {
      "description": "SyncStrategyHook will perform a sync using hooks annotations.\nIf no hook annotation is specified falls back to `kubectl apply`.",
      "type": "object",
      "properties": {
        "syncStrategyApply": {
          "$ref": "#/definitions/v1alpha1SyncStrategyApply"
        }
      }
    },
    "v1alpha1SyncWindow": {
      "type": "object",
      "title": "SyncWindow contains the kind, time, duration and attributes that are used to assign the syncWindows to apps",
      "properties": {
        "andOperator": {
          "type": "boolean",
          "title": "UseAndOperator use AND operator for matching applications, namespaces and clusters instead of the default OR operator"
        },
        "applications": {
          "type": "array",
          "title": "Applications contains a list of applications that the window will apply to",
          "items": {
            "type": "string"
          }
        },
        "clusters": {
          "type": "array",
          "title": "Clusters contains a list of clusters that the window will apply to",
          "items": {
            "type": "string"
          }
        },
        "description": {
          "type": "string",
          "title": "Description of the sync that will be applied to the schedule, can be used to add any information such as a ticket number for example"
        },
        "duration": {
          "type": "string",
          "title": "Duration is the amount of time the sync window will be open"
        },
        "kind": {
          "type": "string",
          "title": "Kind defines if the window allows or blocks syncs"
        },
        "manualSync": {
          "type": "boolean",
          "title": "ManualSync enables manual syncs when they would otherwise be blocked"
        },
        "namespaces": {
          "type": "array",
          "title": "Namespaces contains a list of namespaces that the window will apply to",
          "items": {
            "type": "string"
          }
        },
        "schedule": {
          "type": "string",
          "title": "Schedule is the time the window will begin, specified in cron format"
        },
        "timeZone": {
          "type": "string",
          "title": "TimeZone of the sync that will be applied to the schedule"
        }
      }
    },
    "v1alpha1TLSClientConfig": {
      "type": "object",
      "title": "TLSClientConfig contains settings to enable transport layer security",
      "properties": {
        "caData": {
          "type": "string",
          "format": "byte",
          "title": "CAData holds PEM-encoded bytes (typically read from a root certificates bundle).\nCAData takes precedence over CAFile"
        },
        "certData": {
          "type": "string",
          "format": "byte",
          "title": "CertData holds PEM-encoded bytes (typically read from a client certificate file).\nCertData takes precedence over CertFile"
        },
        "insecure": {
          "description": "Insecure specifies that the server should be accessed without verifying the TLS certificate. For testing only.",
          "type": "boolean"
        },
        "keyData": {
          "type": "string",
          "format": "byte",
          "title": "KeyData holds PEM-encoded bytes (typically read from a client certificate key file).\nKeyData takes precedence over KeyFile"
        },
        "serverName": {
          "description": "ServerName is passed to the server for SNI and is used in the client to check server\ncertificates against. If ServerName is empty, the hostname used to contact the\nserver is used.",
          "type": "string"
        }
      }
    },
    "v1alpha1TagFilter": {
      "type": "object",
      "properties": {
        "key": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      }
    },
    "versionVersionMessage": {
      "type": "object",
      "title": "VersionMessage represents version of the Argo CD API server",
      "properties": {
        "BuildDate": {
          "type": "string"
        },
        "Compiler": {
          "type": "string"
        },
        "ExtraBuildInfo": {
          "type": "string"
        },
        "GitCommit": {
          "type": "string"
        },
        "GitTag": {
          "type": "string"
        },
        "GitTreeState": {
          "type": "string"
        },
        "GoVersion": {
          "type": "string"
        },
        "HelmVersion": {
          "type": "string"
        },
        "JsonnetVersion": {
          "type": "string"
        },
        "KubectlVersion": {
          "type": "string"
        },
        "KustomizeVersion": {
          "type": "string"
        },
        "Platform": {
          "type": "string"
        },
        "Version": {
          "type": "string"
        }
      }
    }
  }
}
